Initial commit
This commit is contained in:
88
package/network/utils/tcpdump/Makefile
Normal file
88
package/network/utils/tcpdump/Makefile
Normal file
@@ -0,0 +1,88 @@
|
||||
#
|
||||
# Copyright (C) 2007-2011 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=tcpdump
|
||||
PKG_VERSION:=4.9.3
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=http://www.us.tcpdump.org/release/ \
|
||||
http://www.tcpdump.org/release/
|
||||
PKG_HASH:=2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_LICENSE:=BSD-3-Clause
|
||||
PKG_CPE_ID:=cpe:/a:tcpdump:tcpdump
|
||||
|
||||
PKG_INSTALL:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/tcpdump/default
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
DEPENDS:=+libpcap
|
||||
TITLE:=Network monitoring and data acquisition tool
|
||||
URL:=http://www.tcpdump.org/
|
||||
endef
|
||||
|
||||
define Package/tcpdump
|
||||
$(Package/tcpdump/default)
|
||||
VARIANT:=full
|
||||
endef
|
||||
|
||||
define Package/tcpdump-mini
|
||||
$(Package/tcpdump/default)
|
||||
TITLE+= (minimal version)
|
||||
VARIANT:=mini
|
||||
endef
|
||||
|
||||
CONFIGURE_ARGS += \
|
||||
--without-cap-ng \
|
||||
--without-crypto
|
||||
|
||||
ifeq ($(CONFIG_IPV6),y)
|
||||
CONFIGURE_ARGS += \
|
||||
--enable-ipv6
|
||||
endif
|
||||
|
||||
TARGET_CFLAGS += -ffunction-sections -fdata-sections
|
||||
TARGET_LDFLAGS += -Wl,--gc-sections
|
||||
|
||||
CONFIGURE_VARS += \
|
||||
BUILD_CC="$(TARGET_CC)" \
|
||||
HOSTCC="$(HOSTCC)" \
|
||||
td_cv_buggygetaddrinfo="no" \
|
||||
ac_cv_linux_vers=$(LINUX_VERSION) \
|
||||
ac_cv_header_rpc_rpcent_h=no \
|
||||
ac_cv_lib_rpc_main=no \
|
||||
ac_cv_path_PCAP_CONFIG=""
|
||||
|
||||
MAKE_FLAGS :=
|
||||
|
||||
ifeq ($(BUILD_VARIANT),mini)
|
||||
TARGET_CFLAGS += -DTCPDUMP_MINI
|
||||
CONFIGURE_ARGS += --disable-smb
|
||||
MAKE_FLAGS += TCPDUMP_MINI=1
|
||||
endif
|
||||
|
||||
MAKE_FLAGS += \
|
||||
CCOPT="$(TARGET_CFLAGS)" INCLS="-I. $(TARGET_CPPFLAGS)"
|
||||
|
||||
define Package/tcpdump/install
|
||||
$(INSTALL_DIR) $(1)/usr/sbin
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tcpdump $(1)/usr/sbin/
|
||||
endef
|
||||
|
||||
Package/tcpdump-mini/install = $(Package/tcpdump/install)
|
||||
|
||||
$(eval $(call BuildPackage,tcpdump))
|
||||
$(eval $(call BuildPackage,tcpdump-mini))
|
||||
@@ -0,0 +1,100 @@
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -6183,97 +6183,6 @@ $as_echo "no" >&6; }
|
||||
fi
|
||||
fi
|
||||
|
||||
-#
|
||||
-# Check for special debugging functions
|
||||
-#
|
||||
-for ac_func in pcap_set_parser_debug
|
||||
-do :
|
||||
- ac_fn_c_check_func "$LINENO" "pcap_set_parser_debug" "ac_cv_func_pcap_set_parser_debug"
|
||||
-if test "x$ac_cv_func_pcap_set_parser_debug" = xyes; then :
|
||||
- cat >>confdefs.h <<_ACEOF
|
||||
-#define HAVE_PCAP_SET_PARSER_DEBUG 1
|
||||
-_ACEOF
|
||||
-
|
||||
-fi
|
||||
-done
|
||||
-
|
||||
-if test "$ac_cv_func_pcap_set_parser_debug" = "no" ; then
|
||||
- #
|
||||
- # OK, we don't have pcap_set_parser_debug() to set the libpcap
|
||||
- # filter expression parser debug flag; can we directly set the
|
||||
- # flag?
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pcap_debug is defined by libpcap" >&5
|
||||
-$as_echo_n "checking whether pcap_debug is defined by libpcap... " >&6; }
|
||||
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
-/* end confdefs.h. */
|
||||
-
|
||||
-int
|
||||
-main ()
|
||||
-{
|
||||
-
|
||||
- extern int pcap_debug;
|
||||
-
|
||||
- return pcap_debug;
|
||||
-
|
||||
- ;
|
||||
- return 0;
|
||||
-}
|
||||
-_ACEOF
|
||||
-if ac_fn_c_try_link "$LINENO"; then :
|
||||
- ac_lbl_cv_pcap_debug_defined=yes
|
||||
-else
|
||||
- ac_lbl_cv_pcap_debug_defined=no
|
||||
-fi
|
||||
-rm -f core conftest.err conftest.$ac_objext \
|
||||
- conftest$ac_exeext conftest.$ac_ext
|
||||
- if test "$ac_lbl_cv_pcap_debug_defined" = yes ; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
-$as_echo "yes" >&6; }
|
||||
-
|
||||
-$as_echo "#define HAVE_PCAP_DEBUG 1" >>confdefs.h
|
||||
-
|
||||
- else
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
-$as_echo "no" >&6; }
|
||||
- #
|
||||
- # OK, what about "yydebug"?
|
||||
- #
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yydebug is defined by libpcap" >&5
|
||||
-$as_echo_n "checking whether yydebug is defined by libpcap... " >&6; }
|
||||
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
-/* end confdefs.h. */
|
||||
-
|
||||
-int
|
||||
-main ()
|
||||
-{
|
||||
-
|
||||
- extern int yydebug;
|
||||
-
|
||||
- return yydebug;
|
||||
-
|
||||
- ;
|
||||
- return 0;
|
||||
-}
|
||||
-_ACEOF
|
||||
-if ac_fn_c_try_link "$LINENO"; then :
|
||||
- ac_lbl_cv_yydebug_defined=yes
|
||||
-else
|
||||
- ac_lbl_cv_yydebug_defined=no
|
||||
-fi
|
||||
-rm -f core conftest.err conftest.$ac_objext \
|
||||
- conftest$ac_exeext conftest.$ac_ext
|
||||
- if test "$ac_lbl_cv_yydebug_defined" = yes ; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
-$as_echo "yes" >&6; }
|
||||
-
|
||||
-$as_echo "#define HAVE_YYDEBUG 1" >>confdefs.h
|
||||
-
|
||||
- else
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
-$as_echo "no" >&6; }
|
||||
- fi
|
||||
- fi
|
||||
-fi
|
||||
for ac_func in pcap_set_optimizer_debug
|
||||
do :
|
||||
ac_fn_c_check_func "$LINENO" "pcap_set_optimizer_debug" "ac_cv_func_pcap_set_optimizer_debug"
|
||||
@@ -0,0 +1,92 @@
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -5395,37 +5395,6 @@ $as_echo "Using $pfopen" >&6; }
|
||||
LIBS="$LIBS $pfopen"
|
||||
fi
|
||||
fi
|
||||
- libpcap=FAIL
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for local pcap library" >&5
|
||||
-$as_echo_n "checking for local pcap library... " >&6; }
|
||||
-
|
||||
-# Check whether --with-system-libpcap was given.
|
||||
-if test "${with_system_libpcap+set}" = set; then :
|
||||
- withval=$with_system_libpcap;
|
||||
-fi
|
||||
-
|
||||
- if test "x$with_system_libpcap" != xyes ; then
|
||||
- lastdir=FAIL
|
||||
- places=`ls $srcdir/.. | sed -e 's,/$,,' -e "s,^,$srcdir/../," | \
|
||||
- egrep '/libpcap-[0-9]+\.[0-9]+(\.[0-9]*)?([ab][0-9]*|-PRE-GIT)?$'`
|
||||
- places2=`ls .. | sed -e 's,/$,,' -e "s,^,../," | \
|
||||
- egrep '/libpcap-[0-9]+\.[0-9]+(\.[0-9]*)?([ab][0-9]*|-PRE-GIT)?$'`
|
||||
- for dir in $places $srcdir/../libpcap ../libpcap $srcdir/libpcap $places2 ; do
|
||||
- basedir=`echo $dir | sed -e 's/[ab][0-9]*$//' | \
|
||||
- sed -e 's/-PRE-GIT$//' `
|
||||
- if test $lastdir = $basedir ; then
|
||||
- continue;
|
||||
- fi
|
||||
- lastdir=$dir
|
||||
- if test -r $dir/libpcap.a ; then
|
||||
- libpcap=$dir/libpcap.a
|
||||
- d=$dir
|
||||
- fi
|
||||
- done
|
||||
- fi
|
||||
- if test $libpcap = FAIL ; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
|
||||
-$as_echo "not found" >&6; }
|
||||
|
||||
#
|
||||
# Look for pcap-config.
|
||||
@@ -5581,51 +5550,6 @@ if test "x$ac_cv_lib_pcap_main" = xyes;
|
||||
libpcap="-lpcap"
|
||||
fi
|
||||
|
||||
- if test $libpcap = FAIL ; then
|
||||
- as_fn_error $? "see the INSTALL doc for more info" "$LINENO" 5
|
||||
- fi
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for extraneous pcap header directories" >&5
|
||||
-$as_echo_n "checking for extraneous pcap header directories... " >&6; }
|
||||
- if test \( ! -r /usr/local/include/pcap.h \) -a \
|
||||
- \( ! -r /usr/include/pcap.h \); then
|
||||
- if test -r /usr/local/include/pcap/pcap.h; then
|
||||
- d="/usr/local/include/pcap"
|
||||
- elif test -r /usr/include/pcap/pcap.h; then
|
||||
- d="/usr/include/pcap"
|
||||
- fi
|
||||
- fi
|
||||
- if test -z "$d" ; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
|
||||
-$as_echo "not found" >&6; }
|
||||
- else
|
||||
- V_INCLS="-I$d $V_INCLS"
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: found -- -I$d added" >&5
|
||||
-$as_echo "found -- -I$d added" >&6; }
|
||||
- fi
|
||||
- fi
|
||||
- else
|
||||
- V_PCAPDEP=$libpcap
|
||||
- places=`ls $srcdir/.. | sed -e 's,/$,,' -e "s,^,$srcdir/../," | \
|
||||
- egrep '/libpcap-[0-9]*.[0-9]*(.[0-9]*)?([ab][0-9]*)?$'`
|
||||
- places2=`ls .. | sed -e 's,/$,,' -e "s,^,../," | \
|
||||
- egrep '/libpcap-[0-9]*.[0-9]*(.[0-9]*)?([ab][0-9]*)?$'`
|
||||
- pcapH=FAIL
|
||||
- if test -r $d/pcap.h; then
|
||||
- pcapH=$d
|
||||
- else
|
||||
- for dir in $places $srcdir/../libpcap ../libpcap $srcdir/libpcap $places2 ; do
|
||||
- if test -r $dir/pcap.h ; then
|
||||
- pcapH=$dir
|
||||
- fi
|
||||
- done
|
||||
- fi
|
||||
-
|
||||
- if test $pcapH = FAIL ; then
|
||||
- as_fn_error $? "cannot find pcap.h: see INSTALL" "$LINENO" 5
|
||||
- fi
|
||||
- V_INCLS="-I$pcapH $V_INCLS"
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libpcap" >&5
|
||||
-$as_echo "$libpcap" >&6; }
|
||||
# Extract the first word of "pcap-config", so it can be a program name with args.
|
||||
set dummy pcap-config; ac_word=$2
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||
857
package/network/utils/tcpdump/patches/100-tcpdump_mini.patch
Normal file
857
package/network/utils/tcpdump/patches/100-tcpdump_mini.patch
Normal file
@@ -0,0 +1,857 @@
|
||||
--- 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)
|
||||
{
|
||||
@@ -1230,6 +1233,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
|
||||
@@ -249,12 +249,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);
|
||||
@@ -725,6 +736,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)) {
|
||||
@@ -732,6 +744,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));
|
||||
@@ -0,0 +1,47 @@
|
||||
--- a/print-ppp.c
|
||||
+++ b/print-ppp.c
|
||||
@@ -1368,19 +1368,29 @@ trunc:
|
||||
}
|
||||
|
||||
#ifndef TCPDUMP_MINI
|
||||
+/*
|
||||
+ * Un-escape RFC 1662 PPP in HDLC-like framing, with octet escapes.
|
||||
+ * The length argument is the on-the-wire length, not the captured
|
||||
+ * length; we can only un-escape the captured part.
|
||||
+ */
|
||||
static void
|
||||
ppp_hdlc(netdissect_options *ndo,
|
||||
const u_char *p, int length)
|
||||
{
|
||||
+ u_int caplen = ndo->ndo_snapend - p;
|
||||
u_char *b, *t, c;
|
||||
const u_char *s;
|
||||
- int i, proto;
|
||||
+ u_int i;
|
||||
+ int proto;
|
||||
const void *se;
|
||||
|
||||
+ if (caplen == 0)
|
||||
+ return;
|
||||
+
|
||||
if (length <= 0)
|
||||
return;
|
||||
|
||||
- b = (u_char *)malloc(length);
|
||||
+ b = (u_char *)malloc(caplen);
|
||||
if (b == NULL)
|
||||
return;
|
||||
|
||||
@@ -1389,10 +1399,10 @@ ppp_hdlc(netdissect_options *ndo,
|
||||
* Do this so that we dont overwrite the original packet
|
||||
* contents.
|
||||
*/
|
||||
- for (s = p, t = b, i = length; i > 0 && ND_TTEST(*s); i--) {
|
||||
+ for (s = p, t = b, i = caplen; i != 0; i--) {
|
||||
c = *s++;
|
||||
if (c == 0x7d) {
|
||||
- if (i <= 1 || !ND_TTEST(*s))
|
||||
+ if (i <= 1)
|
||||
break;
|
||||
i--;
|
||||
c = *s++ ^ 0x20;
|
||||
Reference in New Issue
Block a user