|
|
@@ -1,6 +1,6 @@
|
|
|
--- a/Makefile.in
|
|
|
+++ b/Makefile.in
|
|
|
-@@ -73,6 +73,85 @@ DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@
|
|
|
+@@ -73,6 +73,86 @@ DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@
|
|
|
|
|
|
CSRC = fptype.c tcpdump.c
|
|
|
|
|
|
@@ -77,6 +77,7 @@
|
|
|
+ print-tftp.c \
|
|
|
+ print-udp.c \
|
|
|
+ print-unsupported.c \
|
|
|
++ print-whois.c \
|
|
|
+ signature.c \
|
|
|
+ strtoaddr.c \
|
|
|
+ util-print.c
|
|
|
@@ -86,7 +87,7 @@
|
|
|
LIBNETDISSECT_SRC=\
|
|
|
addrtoname.c \
|
|
|
addrtostr.c \
|
|
|
-@@ -252,6 +331,8 @@ LIBNETDISSECT_SRC=\
|
|
|
+@@ -254,6 +334,8 @@ LIBNETDISSECT_SRC=\
|
|
|
strtoaddr.c \
|
|
|
util-print.c
|
|
|
|
|
|
@@ -97,7 +98,7 @@
|
|
|
|
|
|
--- a/addrtoname.c
|
|
|
+++ b/addrtoname.c
|
|
|
-@@ -683,8 +683,10 @@ linkaddr_string(netdissect_options *ndo,
|
|
|
+@@ -680,8 +680,10 @@ linkaddr_string(netdissect_options *ndo,
|
|
|
if (type == LINKADDR_ETHER && len == MAC_ADDR_LEN)
|
|
|
return (etheraddr_string(ndo, ep));
|
|
|
|
|
|
@@ -108,7 +109,7 @@
|
|
|
|
|
|
tp = lookup_bytestring(ndo, ep, len);
|
|
|
if (tp->bs_name)
|
|
|
-@@ -1263,6 +1265,7 @@ init_addrtoname(netdissect_options *ndo,
|
|
|
+@@ -1260,6 +1262,7 @@ init_addrtoname(netdissect_options *ndo,
|
|
|
init_ipxsaparray(ndo);
|
|
|
}
|
|
|
|
|
|
@@ -116,7 +117,7 @@
|
|
|
const char *
|
|
|
dnaddr_string(netdissect_options *ndo, u_short dnaddr)
|
|
|
{
|
|
|
-@@ -1279,6 +1282,7 @@ dnaddr_string(netdissect_options *ndo, u
|
|
|
+@@ -1276,6 +1279,7 @@ dnaddr_string(netdissect_options *ndo, u
|
|
|
|
|
|
return(tp->name);
|
|
|
}
|
|
|
@@ -126,7 +127,7 @@
|
|
|
struct hnamemem *
|
|
|
--- a/print-ether.c
|
|
|
+++ b/print-ether.c
|
|
|
-@@ -539,6 +539,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
+@@ -545,6 +545,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
arp_print(ndo, p, length, caplen);
|
|
|
return (1);
|
|
|
|
|
|
@@ -134,7 +135,7 @@
|
|
|
case ETHERTYPE_DN:
|
|
|
decnet_print(ndo, p, length, caplen);
|
|
|
return (1);
|
|
|
-@@ -569,6 +570,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
+@@ -575,6 +576,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
ND_TCHECK_LEN(p, 1);
|
|
|
isoclns_print(ndo, p + 1, length - 1);
|
|
|
return(1);
|
|
|
@@ -142,19 +143,19 @@
|
|
|
|
|
|
case ETHERTYPE_PPPOED:
|
|
|
case ETHERTYPE_PPPOES:
|
|
|
-@@ -581,9 +583,11 @@ ethertype_print(netdissect_options *ndo,
|
|
|
+@@ -587,9 +589,11 @@ ethertype_print(netdissect_options *ndo,
|
|
|
eapol_print(ndo, p);
|
|
|
return (1);
|
|
|
|
|
|
+#ifndef TCPDUMP_MINI
|
|
|
- case ETHERTYPE_RRCP:
|
|
|
- rrcp_print(ndo, p, length, src, dst);
|
|
|
+ case ETHERTYPE_REALTEK:
|
|
|
+ rtl_print(ndo, p, length, src, dst);
|
|
|
return (1);
|
|
|
+#endif
|
|
|
|
|
|
case ETHERTYPE_PPP:
|
|
|
if (length) {
|
|
|
-@@ -592,6 +596,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
+@@ -598,6 +602,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
}
|
|
|
return (1);
|
|
|
|
|
|
@@ -162,7 +163,7 @@
|
|
|
case ETHERTYPE_MPCP:
|
|
|
mpcp_print(ndo, p, length);
|
|
|
return (1);
|
|
|
-@@ -604,19 +609,23 @@ ethertype_print(netdissect_options *ndo,
|
|
|
+@@ -610,19 +615,23 @@ ethertype_print(netdissect_options *ndo,
|
|
|
case ETHERTYPE_CFM_OLD:
|
|
|
cfm_print(ndo, p, length);
|
|
|
return (1);
|
|
|
@@ -186,7 +187,7 @@
|
|
|
case ETHERTYPE_MPLS:
|
|
|
case ETHERTYPE_MPLS_MULTI:
|
|
|
mpls_print(ndo, p, length);
|
|
|
-@@ -646,6 +655,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
+@@ -652,6 +661,7 @@ ethertype_print(netdissect_options *ndo,
|
|
|
case ETHERTYPE_PTP:
|
|
|
ptp_print(ndo, p, length);
|
|
|
return (1);
|
|
|
@@ -214,7 +215,7 @@
|
|
|
break;
|
|
|
--- a/print-icmp6.c
|
|
|
+++ b/print-icmp6.c
|
|
|
-@@ -1384,7 +1384,7 @@ get_upperlayer(netdissect_options *ndo,
|
|
|
+@@ -1371,7 +1371,7 @@ get_upperlayer(netdissect_options *ndo,
|
|
|
nh = GET_U_1(fragh->ip6f_nxt);
|
|
|
hlen = sizeof(struct ip6_frag);
|
|
|
break;
|
|
|
@@ -223,7 +224,7 @@
|
|
|
case IPPROTO_AH:
|
|
|
ah = (const struct ah *)bp;
|
|
|
if (!ND_TTEST_1(ah->ah_len))
|
|
|
-@@ -1392,7 +1392,7 @@ get_upperlayer(netdissect_options *ndo,
|
|
|
+@@ -1379,7 +1379,7 @@ get_upperlayer(netdissect_options *ndo,
|
|
|
nh = GET_U_1(ah->ah_nxt);
|
|
|
hlen = (GET_U_1(ah->ah_len) + 2) << 2;
|
|
|
break;
|
|
|
@@ -336,7 +337,7 @@
|
|
|
default:
|
|
|
/*
|
|
|
* AH and ESP are, in the RFCs that describe them,
|
|
|
-@@ -357,6 +358,7 @@ ip6_print(netdissect_options *ndo, const
|
|
|
+@@ -375,6 +376,7 @@ ip6_print(netdissect_options *ndo, const
|
|
|
nh = GET_U_1(cp);
|
|
|
break;
|
|
|
|
|
|
@@ -344,7 +345,7 @@
|
|
|
case IPPROTO_FRAGMENT:
|
|
|
advance = frag6_print(ndo, cp, (const u_char *)ip6);
|
|
|
if (advance < 0 || ndo->ndo_snapend <= cp + advance) {
|
|
|
-@@ -387,7 +389,7 @@ ip6_print(netdissect_options *ndo, const
|
|
|
+@@ -405,7 +407,7 @@ ip6_print(netdissect_options *ndo, const
|
|
|
nh = GET_U_1(cp);
|
|
|
nd_pop_packet_info(ndo);
|
|
|
return;
|
|
|
@@ -462,7 +463,7 @@
|
|
|
static void
|
|
|
ppp_hdlc(netdissect_options *ndo,
|
|
|
const u_char *p, u_int length)
|
|
|
-@@ -1440,17 +1441,19 @@ trunc:
|
|
|
+@@ -1451,17 +1452,19 @@ trunc:
|
|
|
ndo->ndo_snapend = se;
|
|
|
nd_print_trunc(ndo);
|
|
|
}
|
|
|
@@ -483,7 +484,7 @@
|
|
|
|
|
|
switch (proto) {
|
|
|
case PPP_LCP: /* fall through */
|
|
|
-@@ -1483,6 +1486,7 @@ handle_ppp(netdissect_options *ndo,
|
|
|
+@@ -1494,6 +1497,7 @@ handle_ppp(netdissect_options *ndo,
|
|
|
case PPP_IPV6:
|
|
|
ip6_print(ndo, p, length);
|
|
|
break;
|
|
|
@@ -491,7 +492,7 @@
|
|
|
case ETHERTYPE_IPX: /*XXX*/
|
|
|
case PPP_IPX:
|
|
|
ipx_print(ndo, p, length);
|
|
|
-@@ -1494,6 +1498,7 @@ handle_ppp(netdissect_options *ndo,
|
|
|
+@@ -1505,6 +1509,7 @@ handle_ppp(netdissect_options *ndo,
|
|
|
case PPP_MPLS_MCAST:
|
|
|
mpls_print(ndo, p, length);
|
|
|
break;
|
|
|
@@ -499,7 +500,7 @@
|
|
|
case PPP_COMP:
|
|
|
ND_PRINT("compressed PPP data");
|
|
|
break;
|
|
|
-@@ -1634,6 +1639,7 @@ ppp_if_print(netdissect_options *ndo,
|
|
|
+@@ -1652,6 +1657,7 @@ ppp_if_print(netdissect_options *ndo,
|
|
|
ppp_print(ndo, p, length);
|
|
|
}
|
|
|
|
|
|
@@ -507,14 +508,14 @@
|
|
|
/*
|
|
|
* PPP I/F printer to use if we know that RFC 1662-style PPP in HDLC-like
|
|
|
* framing, or Cisco PPP with HDLC framing as per section 4.3.1 of RFC 1547,
|
|
|
-@@ -1877,3 +1883,4 @@ printx:
|
|
|
+@@ -1895,3 +1901,4 @@ printx:
|
|
|
#endif /* __bsdi__ */
|
|
|
ndo->ndo_ll_hdr_len += hdrlength;
|
|
|
}
|
|
|
+#endif
|
|
|
--- a/print-sll.c
|
|
|
+++ b/print-sll.c
|
|
|
-@@ -460,12 +460,14 @@ recurse:
|
|
|
+@@ -465,12 +465,14 @@ recurse:
|
|
|
*/
|
|
|
switch (ether_type) {
|
|
|
|
|
|
@@ -531,7 +532,7 @@
|
|
|
/*
|
|
|
--- a/print-tcp.c
|
|
|
+++ b/print-tcp.c
|
|
|
-@@ -612,6 +612,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
+@@ -614,6 +614,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
ND_PRINT(" %u", utoval);
|
|
|
break;
|
|
|
|
|
|
@@ -539,7 +540,7 @@
|
|
|
case TCPOPT_MPTCP:
|
|
|
{
|
|
|
const u_char *snapend_save;
|
|
|
-@@ -635,7 +636,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
+@@ -637,7 +638,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
goto bad;
|
|
|
break;
|
|
|
}
|
|
|
@@ -548,7 +549,7 @@
|
|
|
case TCPOPT_FASTOPEN:
|
|
|
datalen = len - 2;
|
|
|
LENCHECK(datalen);
|
|
|
-@@ -720,6 +721,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
+@@ -722,6 +723,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
@@ -556,7 +557,7 @@
|
|
|
if (ndo->ndo_packettype) {
|
|
|
switch (ndo->ndo_packettype) {
|
|
|
case PT_ZMTP1:
|
|
|
-@@ -735,6 +737,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
+@@ -737,6 +739,7 @@ tcp_print(netdissect_options *ndo,
|
|
|
}
|
|
|
return;
|
|
|
}
|
|
|
@@ -564,12 +565,12 @@
|
|
|
|
|
|
if (IS_SRC_OR_DST_PORT(TELNET_PORT)) {
|
|
|
telnet_print(ndo, bp, length);
|
|
|
-@@ -745,24 +748,31 @@ tcp_print(netdissect_options *ndo,
|
|
|
+@@ -746,24 +749,31 @@ tcp_print(netdissect_options *ndo,
|
|
|
+ } else if (IS_SRC_OR_DST_PORT(WHOIS_PORT)) {
|
|
|
ND_PRINT(": ");
|
|
|
- ndo->ndo_protocol = "whois"; /* needed by txtproto_print() */
|
|
|
- txtproto_print(ndo, bp, length, NULL, 0); /* RFC 3912 */
|
|
|
+ whois_print(ndo, bp, length);
|
|
|
- } else if (IS_SRC_OR_DST_PORT(BGP_PORT))
|
|
|
-+ }
|
|
|
++ }
|
|
|
+#ifndef TCPDUMP_MINI
|
|
|
+ else if (IS_SRC_OR_DST_PORT(BGP_PORT))
|
|
|
bgp_print(ndo, bp, length);
|
|
|
@@ -597,7 +598,7 @@
|
|
|
else if (IS_SRC_OR_DST_PORT(FTP_PORT)) {
|
|
|
ND_PRINT(": ");
|
|
|
ftp_print(ndo, bp, length);
|
|
|
-@@ -775,12 +785,14 @@ tcp_print(netdissect_options *ndo,
|
|
|
+@@ -776,12 +786,14 @@ tcp_print(netdissect_options *ndo,
|
|
|
} else if (IS_SRC_OR_DST_PORT(NAMESERVER_PORT)) {
|
|
|
/* over_tcp: TRUE, is_mdns: FALSE */
|
|
|
domain_print(ndo, bp, length, TRUE, FALSE);
|
|
|
@@ -831,7 +832,7 @@
|
|
|
{ null_if_print, DLT_LOOP },
|
|
|
#endif
|
|
|
+#ifndef TCPDUMP_MINI
|
|
|
- #if defined(DLT_PFLOG) && defined(HAVE_NET_IF_PFLOG_H)
|
|
|
+ #ifdef DLT_PFLOG
|
|
|
{ pflog_if_print, DLT_PFLOG },
|
|
|
#endif
|
|
|
@@ -200,6 +211,7 @@ static const struct printer printers[] =
|