u_int8_t ip_p; /* protocol */
u_int16_t ip_sum; /* checksum */
struct in_addr ip_src,ip_dst; /* source and dest address */
-};
+} __attribute__((packed));
#define IP_MAXPACKET 65535 /* maximum packet size */
n_long ipt_time;
} ipt_ta[1];
} ipt_timestamp;
-};
+} __attribute__((packed));
/* flag bits for ipt_flg */
#define IPOPT_TS_TSONLY 0 /* timestamps only */
struct mbuf_ptr {
struct mbuf *mptr;
uint32_t dummy;
-};
+} __attribute__((packed));
#else
struct mbuf_ptr {
struct mbuf *mptr;
-};
+} __attribute__((packed));
#endif
struct qlink {
void *next, *prev;
u_int8_t ipq_p; /* protocol of this fragment */
u_int16_t ipq_id; /* sequence id for reassembly */
struct in_addr ipq_src,ipq_dst;
-};
+} __attribute__((packed));
/*
* Ip header, when holding a fragment.
struct ipasfrag {
struct qlink ipf_link;
struct ip ipf_ip;
-};
+} __attribute__((packed));
#define ipf_off ipf_ip.ip_off
#define ipf_tos ipf_ip.ip_tos
struct ipoption {
struct in_addr ipopt_dst; /* first-hop dst if source routed */
int8_t ipopt_list[MAX_IPOPTLEN]; /* options proper */
-};
+} __attribute__((packed));
#endif