From: hannes Date: Sun, 25 May 2003 16:40:48 +0000 (+0000) Subject: warn if v6 was found using ip_print() X-Git-Tag: tcpdump-3.8-bp~129 X-Git-Url: https://git.tcpdump.org/tcpdump/commitdiff_plain/56e21a106413dd7c8b76f77ce2ea6a8236fdfb89 warn if v6 was found using ip_print() --- diff --git a/print-ip.c b/print-ip.c index f3471c50..f540f552 100644 --- a/print-ip.c +++ b/print-ip.c @@ -21,7 +21,7 @@ #ifndef lint static const char rcsid[] = - "@(#) $Header: /tcpdump/master/tcpdump/print-ip.c,v 1.125 2003-05-21 08:39:57 hannes Exp $ (LBL)"; + "@(#) $Header: /tcpdump/master/tcpdump/print-ip.c,v 1.126 2003-05-25 16:40:48 hannes Exp $ (LBL)"; #endif #ifdef HAVE_CONFIG_H @@ -369,9 +369,15 @@ ip_print(register const u_char *bp, register u_int length) u_int16_t sum, ip_sum; const char *sep = ""; - printf("IP%s ", (((*bp >> 4) & 0xf) == 4) ? "" : "%u", (*bp >> 4) & 0xf); /* print version if != 4 */ - ip = (const struct ip *)bp; + if (IP_V(ip) != 4) { /* print version if != 4 */ + printf("IP%u ", IP_V(ip)); + if (IP_V(ip) == 6) + printf(", wrong link-layer encapsulation"); + } + else + printf("IP "); + if ((u_char *)(ip + 1) > snapend) { printf("[|ip]"); return;