Hi all,
It seems that there is a typo, 2nd argument - length is missing from
the function call icmp_print in print-skip.c
File: usr.sbin/tcpdump/print-skip.c
577 void skip_print_next(u_char nxt, const u_char *p, int len,
const u_char *bp2)
578 {
579 switch(nxt) {
580 case IPPROTO_IP: ip_print(p,len); break;
581 case IPPROTO_ICMP: icmp_print(p,bp2); break;
File: usr.sbin/tcpdump/print-icmp.c
165 void
166 icmp_print(const u_char *bp, u_int length, const u_char *bp2)
167 {
168 const struct icmp *dp;
169 const struct ip *ip;
This patch fixes the same.
Regards,
Neeraj Pal
Index: usr.sbin/tcpdump/print-skip.c
===================================================================
RCS file: /cvs/src/usr.sbin/tcpdump/print-skip.c,v
retrieving revision 1.6
diff -u -p -u -p -r1.6 print-skip.c
--- usr.sbin/tcpdump/print-skip.c 16 Nov 2015 00:16:39 -0000 1.6
+++ usr.sbin/tcpdump/print-skip.c 3 Nov 2020 10:25:32 -0000
@@ -578,7 +578,7 @@ void skip_print_next(u_char nxt, const u
{
switch(nxt) {
case IPPROTO_IP: ip_print(p,len); break;
- case IPPROTO_ICMP: icmp_print(p,bp2); break;
+ case IPPROTO_ICMP: icmp_print(p,len,bp2); break;
case IPPROTO_TCP: tcp_print(p,len,bp2); break;
case IPPROTO_UDP: udp_print(p,len,bp2); break;
case IPPROTO_ESP: esp_print(p,len,bp2); break;