]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-tcp.c
NDOize safeputs() and safeputchar()
[tcpdump] / print-tcp.c
index 2b470f5929c58df18052897d525a35089d2a626f..4e970038bb86c4460944cae87959fd558e8a4a48 100644 (file)
@@ -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;
 
@@ -663,7 +663,7 @@ tcp_print(register const u_char *bp, register u_int length,
         if (packettype) {
                 switch (packettype) {
                 case PT_ZMTP1:
-                        zmtp1_print(bp, length);
+                        zmtp1_print(gndo, bp, length);
                         break;
                 }
                 return;
@@ -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(bp, length);
+                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)) {
@@ -722,12 +723,12 @@ tcp_print(register const u_char *bp, register u_int length,
                         direction = (enum sunrpc_msg_type)EXTRACT_32BITS(&rp->rm_direction);
                         if (dport == NFS_PORT && direction == SUNRPC_CALL) {
                                 (void)printf(": NFS request xid %u ", EXTRACT_32BITS(&rp->rm_xid));
-                                nfsreq_print_noaddr((u_char *)rp, fraglen, (u_char *)ip);
+                                nfsreq_print_noaddr(gndo, (u_char *)rp, fraglen, (u_char *)ip);
                                 return;
                         }
                         if (sport == NFS_PORT && direction == SUNRPC_REPLY) {
                                 (void)printf(": NFS reply xid %u ", EXTRACT_32BITS(&rp->rm_xid));
-                                nfsreply_print_noaddr((u_char *)rp, fraglen, (u_char *)ip);
+                                nfsreply_print_noaddr(gndo, (u_char *)rp, fraglen, (u_char *)ip);
                                 return;
                         }
                 }
@@ -776,7 +777,7 @@ print_tcp_rst_data(register const u_char *sp, u_int length)
         putchar(' ');
         while (length-- && sp <= snapend) {
                 c = *sp++;
-                safeputchar(c);
+                safeputchar(gndo, c);
         }
         putchar(']');
 }