--- a/Makefile.in +++ b/Makefile.in @@ -70,6 +70,82 @@ DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@ @rm -f $@ $(CC) $(FULL_CFLAGS) -c $(srcdir)/$*.c +ifdef TCPDUMP_MINI + +CSRC=\ + tcpdump.c \ + netdissect.c \ + setsignal.c \ + addrtoname.c \ + addrtostr.c \ + af.c \ + ascii_strcasecmp.c \ + checksum.c \ + cpack.c \ + gmpls.c \ + gmt2local.c \ + in_cksum.c \ + ipproto.c \ + l2vpn.c \ + machdep.c \ + nlpid.c \ + oui.c \ + parsenfsfh.c \ + print.c \ + print-802_11.c \ + print-aodv.c \ + print-arp.c \ + print-ascii.c \ + print-bootp.c \ + print-dhcp6.c \ + print-domain.c \ + print-eap.c \ + print-ether.c \ + print-ftp.c \ + print-gre.c \ + print-http.c \ + print-icmp.c \ + print-icmp6.c \ + print-igmp.c \ + print-ip.c \ + print-ip6.c \ + print-ip6opts.c \ + print-ipnet.c \ + print-l2tp.c \ + print-llc.c \ + print-lldp.c \ + print-loopback.c \ + print-nfs.c \ + print-ntp.c \ + print-null.c \ + print-olsr.c \ + print-ospf.c \ + print-ospf6.c \ + print-ppp.c \ + print-pppoe.c \ + print-pptp.c \ + print-radius.c \ + print-raw.c \ + print-rsvp.c \ + print-rt6.c \ + print-rtsp.c \ + print-sip.c \ + print-sll.c \ + print-smtp.c \ + print-snmp.c \ + print-stp.c \ + print-sunrpc.c \ + print-syslog.c \ + print-tcp.c \ + print-telnet.c \ + print-tftp.c \ + print-udp.c \ + signature.c \ + strtoaddr.c \ + util-print.c + +else + CSRC = setsignal.c tcpdump.c LIBNETDISSECT_SRC=\ @@ -237,12 +313,16 @@ LIBNETDISSECT_SRC=\ strtoaddr.c \ util-print.c +endif + LOCALSRC = @LOCALSRC@ GENSRC = version.c LIBOBJS = @LIBOBJS@ +ifndef TCPDUMP_MINI LIBNETDISSECT_OBJ=$(LIBNETDISSECT_SRC:.c=.o) ${LOCALSRC:.c=.o} ${LIBOBJS} LIBNETDISSECT=libnetdissect.a +endif SRC = $(CSRC) $(GENSRC) $(LOCALSRC) $(LIBNETDISSECT_SRC) @@ -373,10 +453,12 @@ $(PROG): $(OBJ) @V_PCAPDEP@ @rm -f $@ $(CC) $(FULL_CFLAGS) $(LDFLAGS) -o $@ $(OBJ) $(LIBS) +ifndef TCPDUMP_MINI $(LIBNETDISSECT): $(LIBNETDISSECT_OBJ) @rm -f $@ $(AR) cr $@ $(LIBNETDISSECT_OBJ) $(RANLIB) $@ +endif datalinks.o: $(srcdir)/missing/datalinks.c $(CC) $(FULL_CFLAGS) -o $@ -c $(srcdir)/missing/datalinks.c --- a/addrtoname.c +++ b/addrtoname.c @@ -578,8 +578,10 @@ linkaddr_string(netdissect_options *ndo, if (type == LINKADDR_ETHER && len == ETHER_ADDR_LEN) return (etheraddr_string(ndo, ep)); +#ifndef TCPDUMP_MINI if (type == LINKADDR_FRELAY) return (q922_string(ndo, ep, len)); +#endif tp = lookup_bytestring(ndo, ep, len); if (tp->bs_name) @@ -1214,6 +1216,7 @@ init_addrtoname(netdissect_options *ndo, init_ipxsaparray(ndo); } +#ifndef TCPDUMP_MINI const char * dnaddr_string(netdissect_options *ndo, u_short dnaddr) { @@ -1233,6 +1236,7 @@ dnaddr_string(netdissect_options *ndo, u return(tp->name); } +#endif /* Return a zero'ed hnamemem struct and cuts down on calloc() overhead */ struct hnamemem * --- a/print.c +++ b/print.c @@ -48,6 +48,7 @@ static const struct printer printers[] = #ifdef DLT_IPNET { ipnet_if_print, DLT_IPNET }, #endif +#ifndef TCPDUMP_MINI #ifdef DLT_IEEE802_15_4 { ieee802_15_4_if_print, DLT_IEEE802_15_4 }, #endif @@ -57,12 +58,14 @@ static const struct printer printers[] = #ifdef DLT_PPI { ppi_if_print, DLT_PPI }, #endif +#endif #ifdef DLT_NETANALYZER { netanalyzer_if_print, DLT_NETANALYZER }, #endif #ifdef DLT_NETANALYZER_TRANSPARENT { netanalyzer_transparent_if_print, DLT_NETANALYZER_TRANSPARENT }, #endif +#ifndef TCPDUMP_MINI #if defined(DLT_NFLOG) && defined(HAVE_PCAP_NFLOG_H) { nflog_if_print, DLT_NFLOG}, #endif @@ -75,10 +78,12 @@ static const struct printer printers[] = #ifdef DLT_IP_OVER_FC { ipfc_if_print, DLT_IP_OVER_FC }, #endif +#endif { null_if_print, DLT_NULL }, #ifdef DLT_LOOP { null_if_print, DLT_LOOP }, #endif +#ifndef TCPDUMP_MINI #ifdef DLT_APPLE_IP_OVER_IEEE1394 { ap1394_if_print, DLT_APPLE_IP_OVER_IEEE1394 }, #endif @@ -92,7 +97,9 @@ static const struct printer printers[] = #ifdef DLT_ARCNET_LINUX { arcnet_linux_if_print, DLT_ARCNET_LINUX }, #endif +#endif { raw_if_print, DLT_RAW }, +#ifndef TCPDUMP_MINI #ifdef DLT_IPV4 { raw_if_print, DLT_IPV4 }, #endif @@ -116,17 +123,21 @@ static const struct printer printers[] = #ifdef DLT_HDLC { chdlc_if_print, DLT_HDLC }, #endif +#endif #ifdef DLT_PPP_ETHER { pppoe_if_print, DLT_PPP_ETHER }, #endif +#ifndef TCPDUMP_MINI #if defined(DLT_PFLOG) && defined(HAVE_NET_IF_PFLOG_H) { pflog_if_print, DLT_PFLOG }, #endif { token_if_print, DLT_IEEE802 }, { fddi_if_print, DLT_FDDI }, +#endif #ifdef DLT_LINUX_SLL { sll_if_print, DLT_LINUX_SLL }, #endif +#ifndef TCPDUMP_MINI #ifdef DLT_FR { fr_if_print, DLT_FR }, #endif @@ -198,6 +209,7 @@ static const struct printer printers[] = #ifdef DLT_PKTAP { pktap_if_print, DLT_PKTAP }, #endif +#endif #ifdef DLT_IEEE802_11_RADIO { ieee802_11_radio_if_print, DLT_IEEE802_11_RADIO }, #endif @@ -214,12 +226,14 @@ static const struct printer printers[] = #ifdef DLT_PPP_WITHDIRECTION { ppp_if_print, DLT_PPP_WITHDIRECTION }, #endif +#ifndef TCPDUMP_MINI #ifdef DLT_PPP_BSDOS { ppp_bsdos_if_print, DLT_PPP_BSDOS }, #endif #ifdef DLT_PPP_SERIAL { ppp_hdlc_if_print, DLT_PPP_SERIAL }, #endif +#endif { NULL, 0 }, }; --- a/print-ether.c +++ b/print-ether.c @@ -342,6 +342,7 @@ ethertype_print(netdissect_options *ndo, arp_print(ndo, p, length, caplen); return (1); +#ifndef TCPDUMP_MINI case ETHERTYPE_DN: decnet_print(ndo, p, length, caplen); return (1); @@ -368,6 +369,7 @@ ethertype_print(netdissect_options *ndo, } isoclns_print(ndo, p + 1, length - 1); return(1); +#endif case ETHERTYPE_PPPOED: case ETHERTYPE_PPPOES: @@ -380,9 +382,11 @@ ethertype_print(netdissect_options *ndo, eap_print(ndo, p, length); return (1); +#ifndef TCPDUMP_MINI case ETHERTYPE_RRCP: rrcp_print(ndo, p, length, src, dst); return (1); +#endif case ETHERTYPE_PPP: if (length) { @@ -391,6 +395,7 @@ ethertype_print(netdissect_options *ndo, } return (1); +#ifndef TCPDUMP_MINI case ETHERTYPE_MPCP: mpcp_print(ndo, p, length); return (1); @@ -403,6 +408,7 @@ ethertype_print(netdissect_options *ndo, case ETHERTYPE_CFM_OLD: cfm_print(ndo, p, length); return (1); +#endif case ETHERTYPE_LLDP: lldp_print(ndo, p, length); @@ -412,6 +418,7 @@ ethertype_print(netdissect_options *ndo, loopback_print(ndo, p, length); return (1); +#ifndef TCPDUMP_MINI case ETHERTYPE_MPLS: case ETHERTYPE_MPLS_MULTI: mpls_print(ndo, p, length); @@ -441,6 +448,7 @@ ethertype_print(netdissect_options *ndo, case ETHERTYPE_MEDSA: medsa_print(ndo, p, length, caplen, src, dst); return (1); +#endif case ETHERTYPE_LAT: case ETHERTYPE_SCA: --- a/print-gre.c +++ b/print-gre.c @@ -216,6 +216,7 @@ gre_print_0(netdissect_options *ndo, con case ETHERTYPE_IPV6: ip6_print(ndo, bp, len); break; +#ifndef TCPDUMP_MINI case ETHERTYPE_MPLS: mpls_print(ndo, bp, len); break; @@ -231,6 +232,7 @@ gre_print_0(netdissect_options *ndo, con case ETHERTYPE_TEB: ether_print(ndo, bp, len, ndo->ndo_snapend - bp, NULL, NULL); break; +#endif default: ND_PRINT((ndo, "gre-proto-0x%x", prot)); } --- a/print-igmp.c +++ b/print-igmp.c @@ -306,6 +306,7 @@ igmp_print(netdissect_options *ndo, ND_TCHECK2(bp[4], 4); ND_PRINT((ndo, "igmp leave %s", ipaddr_string(ndo, &bp[4]))); break; +#ifndef TCPDUMP_MINI case 0x13: ND_PRINT((ndo, "igmp dvmrp")); if (len < 8) @@ -317,6 +318,7 @@ igmp_print(netdissect_options *ndo, ND_PRINT((ndo, "igmp pimv1")); pimv1_print(ndo, bp, len); break; +#endif case 0x1e: print_mresp(ndo, bp, len); break; --- a/print-ip6.c +++ b/print-ip6.c @@ -305,6 +305,7 @@ ip6_print(netdissect_options *ndo, const return; nh = *cp; break; +#ifndef TCPDUMP_MINI case IPPROTO_FRAGMENT: advance = frag6_print(ndo, cp, (const u_char *)ip6); if (advance < 0 || ndo->ndo_snapend <= cp + advance) @@ -328,6 +329,7 @@ ip6_print(netdissect_options *ndo, const return; nh = *cp; return; +#endif case IPPROTO_ROUTING: ND_TCHECK(*cp); advance = rt6_print(ndo, cp, (const u_char *)ip6); @@ -335,12 +337,14 @@ ip6_print(netdissect_options *ndo, const return; nh = *cp; break; +#ifndef TCPDUMP_MINI case IPPROTO_SCTP: sctp_print(ndo, cp, (const u_char *)ip6, len); return; case IPPROTO_DCCP: dccp_print(ndo, cp, (const u_char *)ip6, len); return; +#endif case IPPROTO_TCP: tcp_print(ndo, cp, len, (const u_char *)ip6, fragmented); return; @@ -350,6 +354,7 @@ ip6_print(netdissect_options *ndo, const case IPPROTO_ICMPV6: icmp6_print(ndo, cp, len, (const u_char *)ip6, fragmented); return; +#ifndef TCPDUMP_MINI case IPPROTO_AH: advance = ah_print(ndo, cp); if (advance < 0) @@ -382,6 +387,7 @@ ip6_print(netdissect_options *ndo, const case IPPROTO_PIM: pim_print(ndo, cp, len, (const u_char *)ip6); return; +#endif case IPPROTO_OSPF: ospf6_print(ndo, cp, len); @@ -395,9 +401,11 @@ ip6_print(netdissect_options *ndo, const ip_print(ndo, cp, len); return; +#ifndef TCPDUMP_MINI case IPPROTO_PGM: pgm_print(ndo, cp, len, (const u_char *)ip6); return; +#endif case IPPROTO_GRE: gre_print(ndo, cp, len); --- a/print-ip.c +++ b/print-ip.c @@ -344,6 +344,7 @@ ip_print_demux(netdissect_options *ndo, again: switch (ipds->nh) { +#ifndef TCPDUMP_MINI case IPPROTO_AH: if (!ND_TTEST(*ipds->cp)) { ND_PRINT((ndo, "[|AH]")); @@ -382,7 +383,9 @@ again: */ break; } +#endif +#ifndef TCPDUMP_MINI case IPPROTO_SCTP: sctp_print(ndo, ipds->cp, (const u_char *)ipds->ip, ipds->len); break; @@ -390,6 +393,7 @@ again: case IPPROTO_DCCP: dccp_print(ndo, ipds->cp, (const u_char *)ipds->ip, ipds->len); break; +#endif case IPPROTO_TCP: /* pass on the MF bit plus the offset to detect fragments */ @@ -409,6 +413,7 @@ again: ipds->off & (IP_MF|IP_OFFMASK)); break; +#ifndef TCPDUMP_MINI case IPPROTO_PIGP: /* * XXX - the current IANA protocol number assignments @@ -429,14 +434,17 @@ again: case IPPROTO_EIGRP: eigrp_print(ndo, ipds->cp, ipds->len); break; +#endif case IPPROTO_ND: ND_PRINT((ndo, " nd %d", ipds->len)); break; +#ifndef TCPDUMP_MINI case IPPROTO_EGP: egp_print(ndo, ipds->cp, ipds->len); break; +#endif case IPPROTO_OSPF: ospf_print(ndo, ipds->cp, ipds->len, (const u_char *)ipds->ip); @@ -469,6 +477,7 @@ again: gre_print(ndo, ipds->cp, ipds->len); break; +#ifndef TCPDUMP_MINI case IPPROTO_MOBILE: mobile_print(ndo, ipds->cp, ipds->len); break; @@ -497,6 +506,7 @@ again: case IPPROTO_PGM: pgm_print(ndo, ipds->cp, ipds->len, (const u_char *)ipds->ip); break; +#endif default: if (ndo->ndo_nflag==0 && (p_name = netdb_protoname(ipds->nh)) != NULL) --- a/print-llc.c +++ b/print-llc.c @@ -206,6 +206,7 @@ llc_print(netdissect_options *ndo, const hdrlen = 4; /* DSAP, SSAP, 2-byte control field */ } +#ifndef TCPDUMP_MINI if (ssap_field == LLCSAP_GLOBAL && dsap_field == LLCSAP_GLOBAL) { /* * This is an Ethernet_802.3 IPX frame; it has an @@ -228,6 +229,7 @@ llc_print(netdissect_options *ndo, const ipx_print(ndo, p, length); return (0); /* no LLC header */ } +#endif dsap = dsap_field & ~LLC_IG; ssap = ssap_field & ~LLC_GSAP; @@ -291,6 +293,7 @@ llc_print(netdissect_options *ndo, const return (hdrlen); } +#ifndef TCPDUMP_MINI if (ssap == LLCSAP_IPX && dsap == LLCSAP_IPX && control == LLC_UI) { /* @@ -304,6 +307,7 @@ llc_print(netdissect_options *ndo, const ipx_print(ndo, p, length); return (hdrlen); } +#endif #ifdef ENABLE_SMB if (ssap == LLCSAP_NETBEUI && dsap == LLCSAP_NETBEUI @@ -322,12 +326,13 @@ llc_print(netdissect_options *ndo, const return (hdrlen); } #endif +#ifndef TCPDUMP_MINI if (ssap == LLCSAP_ISONS && dsap == LLCSAP_ISONS && control == LLC_UI) { isoclns_print(ndo, p, length); return (hdrlen); } - +#endif if (!ndo->ndo_eflag) { if (ssap == dsap) { if (src == NULL || dst == NULL) @@ -480,6 +485,7 @@ snap_print(netdissect_options *ndo, cons case OUI_CISCO: switch (et) { +#ifndef TCPDUMP_MINI case PID_CISCO_CDP: cdp_print(ndo, p, length, caplen); return (1); @@ -492,6 +498,7 @@ snap_print(netdissect_options *ndo, cons case PID_CISCO_VTP: vtp_print(ndo, p, length); return (1); +#endif case PID_CISCO_PVST: case PID_CISCO_VLANBRIDGE: stp_print(ndo, p, length); @@ -504,6 +511,7 @@ snap_print(netdissect_options *ndo, cons case OUI_RFC2684: switch (et) { +#ifndef TCPDUMP_MINI case PID_RFC2684_ETH_FCS: case PID_RFC2684_ETH_NOFCS: /* @@ -565,6 +573,7 @@ snap_print(netdissect_options *ndo, cons */ fddi_print(ndo, p, length, caplen); return (1); +#endif case PID_RFC2684_BPDU: stp_print(ndo, p, length); --- a/print-null.c +++ b/print-null.c @@ -116,6 +116,7 @@ null_if_print(netdissect_options *ndo, c ip6_print(ndo, p, length); break; +#ifndef TCPDUMP_MINI case BSD_AFNUM_ISO: isoclns_print(ndo, p, length); break; @@ -127,6 +128,7 @@ null_if_print(netdissect_options *ndo, c case BSD_AFNUM_IPX: ipx_print(ndo, p, length); break; +#endif default: /* unknown AF_ value */ --- a/print-ppp.c +++ b/print-ppp.c @@ -1367,6 +1367,7 @@ trunc: return 0; } +#ifndef TCPDUMP_MINI static void ppp_hdlc(netdissect_options *ndo, const u_char *p, int length) @@ -1445,6 +1446,7 @@ trunc: free(b); ND_PRINT((ndo, "[|ppp]")); } +#endif /* PPP */ @@ -1452,10 +1454,12 @@ static void handle_ppp(netdissect_options *ndo, u_int proto, const u_char *p, int length) { +#ifndef TCPDUMP_MINI if ((proto & 0xff00) == 0x7e00) { /* is this an escape code ? */ ppp_hdlc(ndo, p - 1, length); return; } +#endif switch (proto) { case PPP_LCP: /* fall through */ @@ -1488,6 +1492,7 @@ handle_ppp(netdissect_options *ndo, case PPP_IPV6: ip6_print(ndo, p, length); break; +#ifndef TCPDUMP_MINI case ETHERTYPE_IPX: /*XXX*/ case PPP_IPX: ipx_print(ndo, p, length); @@ -1499,6 +1504,7 @@ handle_ppp(netdissect_options *ndo, case PPP_MPLS_MCAST: mpls_print(ndo, p, length); break; +#endif case PPP_COMP: ND_PRINT((ndo, "compressed PPP data")); break; @@ -1639,6 +1645,7 @@ ppp_if_print(netdissect_options *ndo, return (0); } +#ifndef TCPDUMP_MINI /* * 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, @@ -1866,6 +1873,7 @@ printx: #endif /* __bsdi__ */ return (hdrlength); } +#endif /* --- a/print-sll.c +++ b/print-sll.c @@ -238,12 +238,14 @@ recurse: */ switch (ether_type) { +#ifndef TCPDUMP_MINI case LINUX_SLL_P_802_3: /* * Ethernet_802.3 IPX frame. */ ipx_print(ndo, p, length); break; +#endif case LINUX_SLL_P_802_2: /* --- a/print-tcp.c +++ b/print-tcp.c @@ -589,12 +589,14 @@ tcp_print(netdissect_options *ndo, ND_PRINT((ndo, " %u", utoval)); break; +#ifndef TCPDUMP_MINI case TCPOPT_MPTCP: datalen = len - 2; LENCHECK(datalen); if (!mptcp_print(ndo, cp-2, len, flags)) goto bad; break; +#endif case TCPOPT_FASTOPEN: datalen = len - 2; @@ -670,6 +672,7 @@ tcp_print(netdissect_options *ndo, return; } +#ifndef TCPDUMP_MINI if (ndo->ndo_packettype) { switch (ndo->ndo_packettype) { case PT_ZMTP1: @@ -681,28 +684,36 @@ tcp_print(netdissect_options *ndo, } return; } +#endif if (IS_SRC_OR_DST_PORT(TELNET_PORT)) { telnet_print(ndo, bp, length); } else if (IS_SRC_OR_DST_PORT(SMTP_PORT)) { ND_PRINT((ndo, ": ")); smtp_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); +#endif else if (IS_SRC_OR_DST_PORT(PPTP_PORT)) pptp_print(ndo, bp); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(REDIS_PORT)) resp_print(ndo, bp, length); +#endif #ifdef ENABLE_SMB else if (IS_SRC_OR_DST_PORT(NETBIOS_SSN_PORT)) nbt_tcp_print(ndo, bp, length); else if (IS_SRC_OR_DST_PORT(SMB_PORT)) smb_tcp_print(ndo, bp, length); #endif +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(BEEP_PORT)) beep_print(ndo, bp, length); else if (IS_SRC_OR_DST_PORT(OPENFLOW_PORT_OLD) || IS_SRC_OR_DST_PORT(OPENFLOW_PORT_IANA)) openflow_print(ndo, bp, length); +#endif else if (IS_SRC_OR_DST_PORT(FTP_PORT)) { ND_PRINT((ndo, ": ")); ftp_print(ndo, bp, length); @@ -719,6 +730,7 @@ tcp_print(netdissect_options *ndo, * XXX packet could be unaligned, it can go strange */ ns_print(ndo, bp + 2, length - 2, 0); +#ifndef TCPDUMP_MINI } else if (IS_SRC_OR_DST_PORT(MSDP_PORT)) { msdp_print(ndo, bp, length); } else if (IS_SRC_OR_DST_PORT(RPKI_RTR_PORT)) { @@ -726,6 +738,7 @@ tcp_print(netdissect_options *ndo, } else if (length > 0 && (IS_SRC_OR_DST_PORT(LDP_PORT))) { ldp_print(ndo, bp, length); +#endif } else if ((IS_SRC_OR_DST_PORT(NFS_PORT)) && length >= 4 && ND_TTEST2(*bp, 4)) { --- a/print-udp.c +++ b/print-udp.c @@ -430,10 +430,12 @@ udp_print(netdissect_options *ndo, regis vat_print(ndo, (const void *)(up + 1), up); break; +#ifndef TCPDUMP_MINI case PT_WB: udpipaddr_print(ndo, ip, sport, dport); wb_print(ndo, (const void *)(up + 1), length); break; +#endif case PT_RPC: rp = (const struct sunrpc_msg *)(up + 1); @@ -462,10 +464,12 @@ udp_print(netdissect_options *ndo, regis snmp_print(ndo, (const u_char *)(up + 1), length); break; +#ifndef TCPDUMP_MINI case PT_CNFP: udpipaddr_print(ndo, ip, sport, dport); cnfp_print(ndo, cp); break; +#endif case PT_TFTP: udpipaddr_print(ndo, ip, sport, dport); @@ -483,6 +487,7 @@ udp_print(netdissect_options *ndo, regis radius_print(ndo, cp, length); break; +#ifndef TCPDUMP_MINI case PT_VXLAN: udpipaddr_print(ndo, ip, sport, dport); vxlan_print(ndo, (const u_char *)(up + 1), length); @@ -497,6 +502,7 @@ udp_print(netdissect_options *ndo, regis udpipaddr_print(ndo, ip, sport, dport); lmp_print(ndo, cp, length); break; +#endif } return; } @@ -574,31 +580,40 @@ udp_print(netdissect_options *ndo, regis ns_print(ndo, (const u_char *)(up + 1), length, 0); else if (IS_SRC_OR_DST_PORT(MULTICASTDNS_PORT)) ns_print(ndo, (const u_char *)(up + 1), length, 1); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(TIMED_PORT)) timed_print(ndo, (const u_char *)(up + 1)); +#endif else if (IS_SRC_OR_DST_PORT(TFTP_PORT)) tftp_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(BOOTPC_PORT) || IS_SRC_OR_DST_PORT(BOOTPS_PORT)) bootp_print(ndo, (const u_char *)(up + 1), length); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(RIP_PORT)) rip_print(ndo, (const u_char *)(up + 1), length); +#endif else if (IS_SRC_OR_DST_PORT(AODV_PORT)) aodv_print(ndo, (const u_char *)(up + 1), length, ip6 != NULL); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT)) isakmp_print(ndo, (const u_char *)(up + 1), length, bp2); + else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT_NATT)) isakmp_rfc3948_print(ndo, (const u_char *)(up + 1), length, bp2); #if 1 /*???*/ else if (IS_SRC_OR_DST_PORT(ISAKMP_PORT_USER1) || IS_SRC_OR_DST_PORT(ISAKMP_PORT_USER2)) isakmp_print(ndo, (const u_char *)(up + 1), length, bp2); #endif +#endif else if (IS_SRC_OR_DST_PORT(SNMP_PORT) || IS_SRC_OR_DST_PORT(SNMPTRAP_PORT)) snmp_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(NTP_PORT)) ntp_print(ndo, (const u_char *)(up + 1), length); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(KERBEROS_PORT) || IS_SRC_OR_DST_PORT(KERBEROS_SEC_PORT)) krb_print(ndo, (const void *)(up + 1)); +#endif else if (IS_SRC_OR_DST_PORT(L2TP_PORT)) l2tp_print(ndo, (const u_char *)(up + 1), length); #ifdef ENABLE_SMB @@ -609,6 +624,7 @@ udp_print(netdissect_options *ndo, regis #endif else if (dport == VAT_PORT) vat_print(ndo, (const void *)(up + 1), up); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(ZEPHYR_SRV_PORT) || IS_SRC_OR_DST_PORT(ZEPHYR_CLT_PORT)) zephyr_print(ndo, (const void *)(up + 1), length); /* @@ -621,8 +637,11 @@ udp_print(netdissect_options *ndo, regis (const u_char *) ip); else if (IS_SRC_OR_DST_PORT(RIPNG_PORT)) ripng_print(ndo, (const u_char *)(up + 1), length); +#endif + else if (IS_SRC_OR_DST_PORT(DHCP6_SERV_PORT) || IS_SRC_OR_DST_PORT(DHCP6_CLI_PORT)) dhcp6_print(ndo, (const u_char *)(up + 1), length); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(AHCP_PORT)) ahcp_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(BABEL_PORT) || IS_SRC_OR_DST_PORT(BABEL_PORT_OLD)) @@ -636,6 +655,7 @@ udp_print(netdissect_options *ndo, regis wb_print(ndo, (const void *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(CISCO_AUTORP_PORT)) cisco_autorp_print(ndo, (const void *)(up + 1), length); +#endif else if (IS_SRC_OR_DST_PORT(RADIUS_PORT) || IS_SRC_OR_DST_PORT(RADIUS_NEW_PORT) || IS_SRC_OR_DST_PORT(RADIUS_ACCOUNTING_PORT) || @@ -643,15 +663,18 @@ udp_print(netdissect_options *ndo, regis IS_SRC_OR_DST_PORT(RADIUS_CISCO_COA_PORT) || IS_SRC_OR_DST_PORT(RADIUS_COA_PORT) ) radius_print(ndo, (const u_char *)(up+1), length); +#ifndef TCPDUMP_MINI else if (dport == HSRP_PORT) hsrp_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(LWRES_PORT)) lwres_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(LDP_PORT)) ldp_print(ndo, (const u_char *)(up + 1), length); +#endif else if (IS_SRC_OR_DST_PORT(OLSR_PORT)) olsr_print(ndo, (const u_char *)(up + 1), length, (IP_V(ip) == 6) ? 1 : 0); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(MPLS_LSP_PING_PORT)) lspping_print(ndo, (const u_char *)(up + 1), length); else if (dport == BFD_CONTROL_PORT || @@ -669,10 +692,12 @@ udp_print(netdissect_options *ndo, regis lwapp_control_print(ndo, (const u_char *)(up + 1), length, 0); else if (IS_SRC_OR_DST_PORT(LWAPP_DATA_PORT)) lwapp_data_print(ndo, (const u_char *)(up + 1), length); +#endif else if (IS_SRC_OR_DST_PORT(SIP_PORT)) sip_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(SYSLOG_PORT)) syslog_print(ndo, (const u_char *)(up + 1), length); +#ifndef TCPDUMP_MINI else if (IS_SRC_OR_DST_PORT(OTV_PORT)) otv_print(ndo, (const u_char *)(up + 1), length); else if (IS_SRC_OR_DST_PORT(VXLAN_PORT)) @@ -689,7 +714,9 @@ udp_print(netdissect_options *ndo, regis if (ndo->ndo_vflag) ND_PRINT((ndo, "kip ")); llap_print(ndo, cp, length); - } else { + } +#endif + else { if (ulen > length) ND_PRINT((ndo, "UDP, bad length %u > %u", ulen, length));