X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/d29f3dab95d8b28a62848fcb043b8ba40348bc3d..c91ffeae22ab1c7d6714f0935a51030d088a5f5c:/print-tcp.c diff --git a/print-tcp.c b/print-tcp.c index 27620d66..eb61216a 100644 --- a/print-tcp.c +++ b/print-tcp.c @@ -142,7 +142,7 @@ static int tcp_cksum(register const struct ip *ip, register const struct tcphdr *tp, register u_int len) { - return nextproto4_cksum(ip, (const u_int8_t *)tp, len, len, + return nextproto4_cksum(gndo, ip, (const u_int8_t *)tp, len, len, IPPROTO_TCP); } @@ -576,7 +576,7 @@ tcp_print(register const u_char *bp, register u_int length, case TCPOPT_MPTCP: datalen = len - 2; LENCHECK(datalen); - if (!mptcp_print(cp-2, len, flags)) + if (!mptcp_print(gndo, cp-2, len, flags)) goto bad; break; @@ -671,11 +671,11 @@ tcp_print(register const u_char *bp, register u_int length, if (sport == TELNET_PORT || dport == TELNET_PORT) { if (!qflag && vflag) - telnet_print(bp, length); + telnet_print(gndo, bp, length); } else if (sport == BGP_PORT || dport == BGP_PORT) - bgp_print(bp, length); + bgp_print(gndo, bp, length); else if (sport == PPTP_PORT || dport == PPTP_PORT) - pptp_print(bp); + pptp_print(gndo, bp); #ifdef TCPDUMP_DO_SMB else if (sport == NETBIOS_SSN_PORT || dport == NETBIOS_SSN_PORT) nbt_tcp_print(bp, length); @@ -684,8 +684,9 @@ tcp_print(register const u_char *bp, register u_int length, #endif else if (sport == BEEP_PORT || dport == BEEP_PORT) beep_print(gndo, bp, length); - else if (sport == OPENFLOW_PORT || dport == OPENFLOW_PORT) - openflow_print(bp, length); + else if (sport == OPENFLOW_PORT_OLD || dport == OPENFLOW_PORT_OLD || + sport == OPENFLOW_PORT_IANA || dport == OPENFLOW_PORT_IANA) + openflow_print(gndo, bp, length); else if (length > 2 && (sport == NAMESERVER_PORT || dport == NAMESERVER_PORT || sport == MULTICASTDNS_PORT || dport == MULTICASTDNS_PORT)) { @@ -693,14 +694,14 @@ tcp_print(register const u_char *bp, register u_int length, * TCP DNS query has 2byte length at the head. * XXX packet could be unaligned, it can go strange */ - ns_print(bp + 2, length - 2, 0); + ns_print(gndo, bp + 2, length - 2, 0); } else if (sport == MSDP_PORT || dport == MSDP_PORT) { msdp_print(gndo, bp, length); } else if (sport == RPKI_RTR_PORT || dport == RPKI_RTR_PORT) { - rpki_rtr_print(bp, length); + rpki_rtr_print(gndo, bp, length); } else if (length > 0 && (sport == LDP_PORT || dport == LDP_PORT)) { - ldp_print(bp, length); + ldp_print(gndo, bp, length); } else if ((sport == NFS_PORT || dport == NFS_PORT) && length >= 4 && TTEST2(*bp, 4)) {