X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/c9d84d15c5c4dc8eca7594101fe5026080ed641e..64e81f2917f6865dff8df96e18cec1b8bf2fa836:/print-frag6.c diff --git a/print-frag6.c b/print-frag6.c index 6a85cfe2..ecb28bac 100644 --- a/print-frag6.c +++ b/print-frag6.c @@ -21,7 +21,11 @@ #ifndef lint static const char rcsid[] = - "@(#) /master/usr.sbin/tcpdump/tcpdump/print-icmp.c,v 2.1 1995/02/03 18:14:42 polk Exp (LBL)"; + "@(#) $Header: /tcpdump/master/tcpdump/print-frag6.c,v 1.12 2000-10-07 05:53:10 itojun Exp $"; +#endif + +#ifdef HAVE_CONFIG_H +#include "config.h" #endif #ifdef INET6 @@ -31,21 +35,12 @@ static const char rcsid[] = #include #include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include +#include "ip6.h" #include "interface.h" #include "addrtoname.h" @@ -64,25 +59,25 @@ frag6_print(register const u_char *bp, register const u_char *bp2) dp = (struct ip6_frag *)bp; ip6 = (struct ip6_hdr *)bp2; - /* 'ep' points to the end of avaible data. */ + /* 'ep' points to the end of available data. */ ep = snapend; TCHECK(dp->ip6f_offlg); if (vflag) { - printf("frag (0x%08x:%d|%d)", - ntohl(dp->ip6f_ident), + printf("frag (0x%08x:%d|%ld)", + (u_int32_t)ntohl(dp->ip6f_ident), ntohs(dp->ip6f_offlg & IP6F_OFF_MASK), sizeof(struct ip6_hdr) + ntohs(ip6->ip6_plen) - - (bp - bp2) - sizeof(struct ip6_frag)); + (long)(bp - bp2) - sizeof(struct ip6_frag)); } else { - printf("frag (%d|%d)", + printf("frag (%d|%ld)", ntohs(dp->ip6f_offlg & IP6F_OFF_MASK), sizeof(struct ip6_hdr) + ntohs(ip6->ip6_plen) - - (bp - bp2) - sizeof(struct ip6_frag)); + (long)(bp - bp2) - sizeof(struct ip6_frag)); } -#if 0 +#if 1 /* it is meaningless to decode non-first fragment */ if (ntohs(dp->ip6f_offlg & IP6F_OFF_MASK) != 0) return 65535;