OpenWrt – Rev 1

Subversion Repositories:
Rev:
--- a/Makefile.in
+++ b/Makefile.in
@@ -72,6 +72,80 @@ DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@
 
 CSRC = setsignal.c tcpdump.c
 
+ifdef TCPDUMP_MINI
+
+LIBNETDISSECT_SRC=\
+       netdissect.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
+
 LIBNETDISSECT_SRC=\
        addrtoname.c \
        addrtostr.c \
@@ -237,6 +311,8 @@ LIBNETDISSECT_SRC=\
        strtoaddr.c \
        util-print.c
 
+endif
+
 LOCALSRC = @LOCALSRC@
 GENSRC = version.c
 LIBOBJS = @LIBOBJS@
--- 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));