diff options
author | Stefan Weil <sw@weilnetz.de> | 2015-08-29 09:12:35 +0200 |
---|---|---|
committer | Jason Wang <jasowang@redhat.com> | 2015-11-12 13:48:36 +0800 |
commit | ecc804cac31cec6cb90feaa459503afda8b38d09 (patch) | |
tree | 4b3dac078325c604488dd346c6a24208289c0c6a /slirp/bootp.c | |
parent | 31e49ac192f782d594bbd04070fe79e800b7813f (diff) |
slirp: Fix type casts and format strings in debug code
Casting pointers to long won't work on 64 bit Windows.
It is not needed with the right format strings.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'slirp/bootp.c')
-rw-r--r-- | slirp/bootp.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/slirp/bootp.c b/slirp/bootp.c index b7db9fa335..1baaab1ab1 100644 --- a/slirp/bootp.c +++ b/slirp/bootp.c @@ -23,6 +23,12 @@ */ #include <slirp.h> +#if defined(_WIN32) +/* Windows ntohl() returns an u_long value. + * Add a type cast to match the format strings. */ +# define ntohl(n) ((uint32_t)ntohl(n)) +#endif + /* XXX: only DHCP is supported */ #define LEASE_TIME (24 * 3600) @@ -155,7 +161,7 @@ static void bootp_reply(Slirp *slirp, const struct bootp_t *bp) dhcp_decode(bp, &dhcp_msg_type, &preq_addr); DPRINTF("bootp packet op=%d msgtype=%d", bp->bp_op, dhcp_msg_type); if (preq_addr.s_addr != htonl(0L)) - DPRINTF(" req_addr=%08x\n", ntohl(preq_addr.s_addr)); + DPRINTF(" req_addr=%08" PRIx32 "\n", ntohl(preq_addr.s_addr)); else DPRINTF("\n"); @@ -234,7 +240,7 @@ static void bootp_reply(Slirp *slirp, const struct bootp_t *bp) q += 4; if (bc) { - DPRINTF("%s addr=%08x\n", + DPRINTF("%s addr=%08" PRIx32 "\n", (dhcp_msg_type == DHCPDISCOVER) ? "offered" : "ack'ed", ntohl(daddr.sin_addr.s_addr)); @@ -302,7 +308,7 @@ static void bootp_reply(Slirp *slirp, const struct bootp_t *bp) } else { static const char nak_msg[] = "requested address not available"; - DPRINTF("nak'ed addr=%08x\n", ntohl(preq_addr.s_addr)); + DPRINTF("nak'ed addr=%08" PRIx32 "\n", ntohl(preq_addr.s_addr)); *q++ = RFC2132_MSG_TYPE; *q++ = 1; |