From b076f358446f2aa598d1b2f633368abd99eba5e1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Juha=20Riihim=C3=A4ki?= Date: Thu, 3 Dec 2009 15:56:04 +0200 Subject: [PATCH] fix networking on win32 host MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit At least under some mingw compilers slirp networking fails without declaring these fields packed. From: Juha Riihimäki Signed-off-by: Juha Riihimäki Signed-off-by: Riku Voipio Signed-off-by: Aurelien Jarno --- slirp/ip.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/slirp/ip.h b/slirp/ip.h index 5074e33..8d185a1 100644 --- a/slirp/ip.h +++ b/slirp/ip.h @@ -91,7 +91,7 @@ struct ip { 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 */ @@ -153,7 +153,7 @@ struct ip_timestamp { n_long ipt_time; } ipt_ta[1]; } ipt_timestamp; -}; +} __attribute__((packed)); /* flag bits for ipt_flg */ #define IPOPT_TS_TSONLY 0 /* timestamps only */ @@ -183,11 +183,11 @@ struct ip_timestamp { 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; @@ -219,7 +219,7 @@ struct ipq { 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. @@ -229,7 +229,7 @@ struct ipq { 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 @@ -248,6 +248,6 @@ struct ipasfrag { struct ipoption { struct in_addr ipopt_dst; /* first-hop dst if source routed */ int8_t ipopt_list[MAX_IPOPTLEN]; /* options proper */ -}; +} __attribute__((packed)); #endif -- 2.7.4