X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/9a0974cf30fc9f569728c4b800b5611473287215..ea5736c8c68f0fc3699cff8205f2823f97a05f8b:/print-ip.c diff --git a/print-ip.c b/print-ip.c index 8bdf5ebc..acf3bd8b 100644 --- a/print-ip.c +++ b/print-ip.c @@ -508,7 +508,8 @@ again: break; case IPPROTO_PIM: - pim_print(ipds->cp, ipds->len); + pim_print(ipds->cp, ipds->len, + in_cksum((const u_short*)ipds->cp, ipds->len, 0)); break; case IPPROTO_VRRP: @@ -657,7 +658,7 @@ ip_print(netdissect_options *ndo, printf(")"); } - if ((u_char *)ipds->ip + hlen <= snapend) { + if (!Kflag && (u_char *)ipds->ip + hlen <= snapend) { sum = in_cksum((const u_short *)ipds->ip, hlen, 0); if (sum != 0) { ip_sum = EXTRACT_16BITS(&ipds->ip->ip_sum);