Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Mar 2026 04:03:03 +0000
From:      Joseph Mingrone <jrm@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 16cef5f7a655 - main - libpcap: Update to 1.10.6
Message-ID:  <69b62f77.4495f.7d4ef563@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by jrm:

URL: https://cgit.FreeBSD.org/src/commit/?id=16cef5f7a65588def71db4fdfa961f959847e3b6

commit 16cef5f7a65588def71db4fdfa961f959847e3b6
Merge: e6f4e4ab8a51 0a1fbf4c244d
Author:     Joseph Mingrone <jrm@FreeBSD.org>
AuthorDate: 2026-03-15 01:42:55 +0000
Commit:     Joseph Mingrone <jrm@FreeBSD.org>
CommitDate: 2026-03-15 03:41:29 +0000

    libpcap: Update to 1.10.6
    
    Changes:        https://raw.githubusercontent.com/the-tcpdump-group/libpcap/89e982c37c36ad0bf9f10b7ded421cb42422effa/CHANGES
    Reviewed by:    bms, emaste
    Obtained from:  https://www.tcpdump.org/release/libpcap-1.10.6.tar.gz
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D55545
    Differential Revision:  https://reviews.freebsd.org/D55858

 contrib/libpcap/CHANGES                            |  107 ++
 contrib/libpcap/CMakeLists.txt                     |   55 +-
 contrib/libpcap/CREDITS                            |   13 +
 contrib/libpcap/INSTALL.md                         |    4 +
 contrib/libpcap/Makefile.in                        |   12 +-
 contrib/libpcap/VERSION                            |    2 +-
 contrib/libpcap/aclocal.m4                         |   11 +-
 contrib/libpcap/autogen.sh                         |   41 +-
 contrib/libpcap/cmake/Modules/FindPacket.cmake     |   49 +-
 contrib/libpcap/cmakeconfig.h.in                   |   12 +-
 contrib/libpcap/config.h.in                        |    8 +-
 contrib/libpcap/configure                          | 1097 ++++++++++----------
 contrib/libpcap/configure.ac                       |   37 +-
 contrib/libpcap/dlpisubs.c                         |  124 +++
 contrib/libpcap/dlpisubs.h                         |    1 +
 contrib/libpcap/doc/README.haiku.md                |   40 +-
 contrib/libpcap/doc/README.solaris.md              |   24 +-
 contrib/libpcap/doc/README.windows.md              |  175 +++-
 contrib/libpcap/fad-getad.c                        |   13 +-
 contrib/libpcap/fmtutils.c                         |    2 +-
 contrib/libpcap/gencode.c                          |  346 ++++--
 contrib/libpcap/grammar.y.in                       |   13 -
 contrib/libpcap/ieee80211.h                        |    6 +-
 contrib/libpcap/instrument-functions.c             |  250 +++++
 contrib/libpcap/nametoaddr.c                       |  452 +++++++-
 contrib/libpcap/nametoaddr.h                       |    1 +
 contrib/libpcap/optimize.c                         |    2 +-
 contrib/libpcap/pcap-bpf.c                         |   40 +-
 contrib/libpcap/pcap-common.c                      |   92 +-
 contrib/libpcap/pcap-dag.c                         |    5 +-
 contrib/libpcap/pcap-dbus.c                        |    4 +
 contrib/libpcap/pcap-dlpi.c                        |  348 ++++---
 contrib/libpcap/pcap-dpdk.c                        |    5 +-
 contrib/libpcap/pcap-haiku.c                       |    8 +-
 contrib/libpcap/pcap-int.h                         |   33 +-
 contrib/libpcap/pcap-libdlpi.c                     |   33 +-
 contrib/libpcap/pcap-linux.c                       |  636 ++++++++++--
 contrib/libpcap/pcap-new.c                         |   54 +-
 contrib/libpcap/pcap-npf.c                         |  100 +-
 contrib/libpcap/pcap-rpcap.c                       |    2 +-
 contrib/libpcap/pcap-savefile.manfile.in           |   29 +-
 contrib/libpcap/pcap-septel.c                      |    3 +-
 contrib/libpcap/pcap-snf.c                         |    5 +-
 contrib/libpcap/pcap.c                             |   73 +-
 contrib/libpcap/pcap/bpf.h                         |    2 -
 contrib/libpcap/pcap/dlt.h                         |  102 +-
 contrib/libpcap/pcap_close.3pcap                   |   14 +-
 contrib/libpcap/pcap_dump_close.3pcap              |   11 +-
 contrib/libpcap/pcap_dump_flush.3pcap              |    2 +-
 contrib/libpcap/pcap_file.3pcap                    |    2 +-
 contrib/libpcap/pcap_loop.3pcap                    |    2 +-
 contrib/libpcap/pcap_next_ex.3pcap                 |    2 +-
 contrib/libpcap/pcap_open_offline.3pcap.in         |    8 +-
 contrib/libpcap/pflog.h                            |    4 +
 contrib/libpcap/rpcapd/CMakeLists.txt              |   28 +-
 contrib/libpcap/rpcapd/rpcapd.c                    |   14 +-
 contrib/libpcap/scanner.l                          |   22 -
 contrib/libpcap/sf-pcap.c                          |   15 +-
 contrib/libpcap/testprogs/CMakeLists.txt           |    9 +-
 contrib/libpcap/testprogs/Makefile.in              |    5 +
 contrib/libpcap/testprogs/filtertest.c             |    3 +
 contrib/libpcap/testprogs/fuzz/CMakeLists.txt      |   43 -
 contrib/libpcap/testprogs/fuzz/fuzz_both.c         |  101 --
 contrib/libpcap/testprogs/fuzz/fuzz_both.options   |    2 -
 contrib/libpcap/testprogs/fuzz/fuzz_filter.c       |   43 -
 contrib/libpcap/testprogs/fuzz/fuzz_filter.options |    2 -
 contrib/libpcap/testprogs/fuzz/fuzz_pcap.c         |   80 --
 contrib/libpcap/testprogs/fuzz/fuzz_pcap.options   |    2 -
 contrib/libpcap/testprogs/fuzz/onefile.c           |   54 -
 contrib/libpcap/testprogs/versiontest.c            |   29 +
 lib/libpcap/Makefile                               |    1 -
 lib/libpcap/config.h                               |  261 ++++-
 sys/net/dlt.h                                      |  177 +++-
 73 files changed, 3740 insertions(+), 1667 deletions(-)

diff --cc contrib/libpcap/instrument-functions.c
index 000000000000,ba0a56a5309f..ba0a56a5309f
mode 000000,100644..100644
--- a/contrib/libpcap/instrument-functions.c
+++ b/contrib/libpcap/instrument-functions.c
diff --cc contrib/libpcap/testprogs/versiontest.c
index 000000000000,a1177dcc0ed4..a1177dcc0ed4
mode 000000,100644..100644
--- a/contrib/libpcap/testprogs/versiontest.c
+++ b/contrib/libpcap/testprogs/versiontest.c
diff --cc lib/libpcap/Makefile
index 7f8d8e65d79c,000000000000..87da7faccdd6
mode 100644,000000..100644
--- a/lib/libpcap/Makefile
+++ b/lib/libpcap/Makefile
@@@ -1,201 -1,0 +1,200 @@@
 +# Makefile for libpcap
 +
 +SHLIBDIR?= /lib
 +
 +.include <src.opts.mk>
 +
 +LIB=	pcap
 +
 +SRCS=	bpf_dump.c \
 +	bpf_filter.c \
 +	bpf_image.c \
 +	etherent.c \
 +	fad-getad.c \
 +	fmtutils.c \
 +	gencode.c \
 +	grammar.y \
 +	nametoaddr.c \
 +	optimize.c \
 +	pcap-bpf.c \
 +	pcap-common.c \
 +	pcap-netmap.c \
 +	pcap-util.c \
 +	pcap.c \
 +	savefile.c \
 +	scanner.l \
 +	sf-pcap.c \
 +	sf-pcapng.c \
 +	tokdefs.h
 +
 +# Old compatibility headers
 +INCS=	pcap-bpf.h \
 +	pcap-namedb.h \
 +	pcap-netmap.h \
 +	pcap.h
 +
 +PCAPINCS= \
 +	pcap/bluetooth.h \
 +	pcap/bpf.h \
 +	pcap/can_socketcan.h \
 +	pcap/compiler-tests.h \
 +	pcap/dlt.h \
 +	pcap/funcattrs.h \
 +	pcap/ipnet.h \
 +	pcap/namedb.h \
 +	pcap/nflog.h \
 +	pcap/pcap-inttypes.h \
 +	pcap/pcap.h \
 +	pcap/socket.h \
 +	pcap/sll.h \
 +	pcap/usb.h \
 +	pcap/vlan.h
 +
 +PCAPINCSDIR=	${INCLUDEDIR}/pcap
 +INCSGROUPS=	INCS PCAPINCS
 +
 +MAN=	pcap.3 \
 +	pcap_activate.3 \
 +	pcap_breakloop.3 \
 +	pcap_can_set_rfmon.3 \
 +	pcap_close.3 \
 +	pcap_compile.3 \
 +	pcap_create.3 \
 +	pcap_datalink.3 \
 +	pcap_datalink_name_to_val.3 \
 +	pcap_datalink_val_to_name.3 \
 +	pcap_dump.3 \
 +	pcap_dump_close.3 \
 +	pcap_dump_file.3 \
 +	pcap_dump_flush.3 \
 +	pcap_dump_ftell.3 \
 +	pcap_dump_open.3 \
 +	pcap_file.3 \
 +	pcap_fileno.3 \
 +	pcap_findalldevs.3 \
 +	pcap_freecode.3 \
 +	pcap_get_required_select_timeout.3 \
 +	pcap_get_selectable_fd.3 \
 +	pcap_get_tstamp_precision.3 \
 +	pcap_geterr.3 \
 +	pcap_init.3 \
 +	pcap_inject.3 \
 +	pcap_is_swapped.3 \
 +	pcap_lib_version.3 \
 +	pcap_list_datalinks.3 \
 +	pcap_list_tstamp_types.3 \
 +	pcap_lookupdev.3 \
 +	pcap_lookupnet.3 \
 +	pcap_loop.3 \
 +	pcap_major_version.3 \
 +	pcap_next_ex.3 \
 +	pcap_offline_filter.3 \
 +	pcap_open_dead.3 \
 +	pcap_open_live.3 \
 +	pcap_open_offline.3 \
 +	pcap_set_buffer_size.3 \
 +	pcap_set_datalink.3 \
 +	pcap_set_promisc.3 \
 +	pcap_set_rfmon.3 \
 +	pcap_set_snaplen.3 \
 +	pcap_set_timeout.3 \
 +	pcap_set_tstamp_precision.3 \
 +	pcap_set_tstamp_type.3 \
 +	pcap_setdirection.3 \
 +	pcap_setfilter.3 \
 +	pcap_setnonblock.3 \
 +	pcap_snapshot.3 \
 +	pcap_stats.3 \
 +	pcap_statustostr.3 \
 +	pcap_strerror.3 \
 +	pcap_tstamp_type_name_to_val.3 \
 +	pcap_tstamp_type_val_to_name.3 \
 +	pcap-savefile.5
 +
 +MANNODEV=	pcap-filter.7 \
 +		pcap-linktype.7 \
 +		pcap-tstamp.7
 +
 +MLINKS= \
 +	pcap_datalink_val_to_name.3 pcap_datalink_val_to_description.3 \
 +	pcap_dump_open.3 pcap_dump_fopen.3 \
 +	pcap_findalldevs.3 pcap_freealldevs.3 \
 +	pcap_geterr.3 pcap_perror.3 \
 +	pcap_inject.3 pcap_sendpacket.3 \
 +	pcap_list_datalinks.3 pcap_free_datalinks.3 \
 +	pcap_list_tstamp_types.3 pcap_free_tstamp_types.3 \
 +	pcap_loop.3 pcap_dispatch.3 \
 +	pcap_major_version.3 pcap_minor_version.3 \
 +	pcap_next_ex.3 pcap_next.3 \
 +	pcap_open_offline.3 pcap_fopen_offline.3 \
 +	pcap_setnonblock.3 pcap_getnonblock.3
 +
 +# Our man pages are a special copy from the distdir. See below.
 +CLEANFILES+=${MAN} ${MANNODEV}
 +CLEANFILES+=grammar.y scanner.h tokdefs.h
 +
 +YFLAGS+=-p pcap_
 +LFLAGS+=-Ppcap_ --header-file=${.OBJDIR}/scanner.h --nounput
 +CFLAGS+=-DHAVE_CONFIG_H -I${.CURDIR} -I${.OBJDIR}
 +CFLAGS+=-D_U_="__attribute__((unused))"
- CFLAGS+=-DHAVE_SNPRINTF -DHAVE_VSNPRINTF
 +CFLAGS+=-DBUILDING_PCAP
 +.if ${MK_INET6_SUPPORT} != "no"
 +CFLAGS+=-DINET6
 +.endif
 +.if ${MK_PF} != "no"
 +CFLAGS+=-DHAVE_NET_PFVAR_H
 +.endif
 +
 +CFLAGS+= -DPCAP_SUPPORT_NETMAP
 +
 +.if ${MK_OFED} != "no"
 +SRCS+= pcap-rdmasniff.c
 +LIBADD+= ibverbs
 +LIBADD+= bnxtre
 +LIBADD+= mlx5
 +CFLAGS+= -DPCAP_SUPPORT_RDMASNIFF
 +.endif
 +
 +WARNS?=	0
 +
 +SHLIB_MAJOR=	8
 +
 +#
 +# Magic to grab sources out of src/contrib
 +#
 +PCAP_DISTDIR?=${SRCTOP}/contrib/libpcap
 +CFLAGS+=-I${PCAP_DISTDIR}
 +.PATH:	${PCAP_DISTDIR}
 +.PATH:	${PCAP_DISTDIR}/bpf/net
 +
 +grammar.y: grammar.y.in
 +	sed  -e 's/@REENTRANT_PARSER@/%pure-parser/' < ${.ALLSRC} > ${.TARGET}
 +
 +tokdefs.h: grammar.h .NOMETA
 +	ln -sf ${.ALLSRC} ${.TARGET}
 +
 +#
 +# Magic to convert the man pages to something non Solarish
 +#
 +.for _page in ${MAN} ${MANNODEV}
 +${_page}:
 +	if [ -f ${PCAP_DISTDIR}/${_page:S/3$/3pcap/} ]; then		\
 +		F=${_page:S/3$/3pcap/}; 				\
 +	elif [ -f ${PCAP_DISTDIR}/${_page:S/3$/3pcap.in/} ]; then	\
 +		F=${_page:S/3$/3pcap.in/}; 				\
 +	elif [ -f ${PCAP_DISTDIR}/${_page:S/5$/manfile.in/} ]; then	\
 +		F=${_page:S/5$/manfile.in/};				\
 +	elif [ -f ${PCAP_DISTDIR}/${_page:S/5$/manfile/} ]; then	\
 +		F=${_page:S/5$/manfile/};				\
 +	else								\
 +		F=${_page:S/7$/manmisc.in/};				\
 +	fi;								\
 +	sed \
 +		-e 's/3PCAP/3/g' \
 +		-e 's/@MAN_FILE_FORMATS@/5/g' \
 +		-e 's/@MAN_MISC_INFO@/7/g' \
 +		-e 's/@MAN_ADMIN_COMMANDS@/8/g' \
 +		${PCAP_DISTDIR}/$$F > ${_page}
 +.endfor
 +
 +.include <bsd.lib.mk>
diff --cc lib/libpcap/config.h
index cea0cc4fd7cb,000000000000..bcae25131613
mode 100644,000000..100644
--- a/lib/libpcap/config.h
+++ b/lib/libpcap/config.h
@@@ -1,222 -1,0 +1,377 @@@
 +/* This is an edited copy of the config.h generated by configure. */
 +
 +/* config.h.  Generated from config.h.in by configure.  */
 +/* config.h.in.  Generated from configure.ac by autoheader.  */
 +
++/* Define to 1 if arpa/inet.h declares `ether_hostton' */
++/* #undef ARPA_INET_H_DECLARES_ETHER_HOSTTON */
++
++/* Enable optimizer debugging */
++/* #undef BDEBUG */
++
++/* define if you want to build the instrument functions code */
++/* #undef ENABLE_INSTRUMENT_FUNCTIONS */
++
++/* Define to 1 if remote packet capture is to be supported */
++/* #undef ENABLE_REMOTE */
++
++/* define if we have the AIX getnetbyname_r() */
++/* #undef HAVE_AIX_GETNETBYNAME_R */
++
++/* define if we have the AIX getprotobyname_r() */
++/* #undef HAVE_AIX_GETPROTOBYNAME_R */
++
 +/* Define to 1 if you have the `asprintf' function. */
 +#define HAVE_ASPRINTF 1
 +
++/* Define to 1 if you have the <config/HaikuConfig.h> header file. */
++/* #undef HAVE_CONFIG_HAIKUCONFIG_H */
++
++/* Define to 1 if you have the <dagapi.h> header file. */
++/* #undef HAVE_DAGAPI_H */
++
++/* define if you have the DAG API */
++/* #undef HAVE_DAG_API */
++
++/* define if you have dag_get_erf_types() */
++/* #undef HAVE_DAG_GET_ERF_TYPES */
++
++/* define if you have dag_get_stream_erf_types() */
++/* #undef HAVE_DAG_GET_STREAM_ERF_TYPES */
++
++/* define if you have large streams capable DAG API */
++/* #undef HAVE_DAG_LARGE_STREAMS_API */
++
++/* define if you have vdag_set_device_info() */
++/* #undef HAVE_DAG_VDAG */
++
++/* Define to 1 if you have the declaration of `ether_hostton' */
++#define HAVE_DECL_ETHER_HOSTTON 1
++
++/* Define to 1 if `dl_module_id_1' is a member of `dl_hp_ppa_info_t'. */
++/* #undef HAVE_DL_HP_PPA_INFO_T_DL_MODULE_ID_1 */
++
++/* Define to 1 if the system has the type `dl_passive_req_t'. */
++/* #undef HAVE_DL_PASSIVE_REQ_T */
++
 +/* Define to 1 if you have the `ether_hostton' function. */
 +#define HAVE_ETHER_HOSTTON 1
 +
 +/* Define to 1 if you have the `ffs' function. */
 +#define HAVE_FFS 1
 +
 +/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
 +#define HAVE_FSEEKO 1
 +
++/* Define to 1 if you have the `getspnam' function. */
++/* #undef HAVE_GETSPNAM */
++
++/* Define to 1 if you have a GNU-style `strerror_r' function. */
++/* #undef HAVE_GNU_STRERROR_R */
++
 +/* on HP-UX 10.20 or later */
 +/* #undef HAVE_HPUX10_20_OR_LATER */
 +
 +/* on HP-UX 9.x */
 +/* #undef HAVE_HPUX9 */
 +
 +/* Define to 1 if you have the <inttypes.h> header file. */
 +#define HAVE_INTTYPES_H 1
 +
++/* Define to 1 if you have the `bsd' library (-lbsd). */
++/* #undef HAVE_LIBBSD */
++
 +/* if libdlpi exists */
 +/* #undef HAVE_LIBDLPI */
 +
 +/* if libnl exists */
 +/* #undef HAVE_LIBNL */
 +
- /* if libnl exists and is version 2.x */
- /* #undef HAVE_LIBNL_2_x */
++/* Define to 1 if you have the <linux/compiler.h> header file. */
++/* #undef HAVE_LINUX_COMPILER_H */
 +
- /* if libnl exists and is version 3.x */
- /* #undef HAVE_LIBNL_3_x */
++/* define if we have the Linux getnetbyname_r() */
++/* #undef HAVE_LINUX_GETNETBYNAME_R */
 +
- /* libnl has NLE_FAILURE */
- /* #undef HAVE_LIBNL_NLE */
++/* define if we have the Linux getprotobyname_r() */
++/* #undef HAVE_LINUX_GETPROTOBYNAME_R */
 +
- /* libnl has new-style socket api */
- /* #undef HAVE_LIBNL_SOCKETS */
++/* Define to 1 if you have the <linux/net_tstamp.h> header file. */
++/* #undef HAVE_LINUX_NET_TSTAMP_H */
 +
- /* Define to 1 if you have the <limits.h> header file. */
- #define HAVE_LIMITS_H 1
++/* Define to 1 if you have the <linux/socket.h> header file. */
++/* #undef HAVE_LINUX_SOCKET_H */
 +
- /* Define to 1 if you have the <linux/compiler.h> header file. */
- /* #undef HAVE_LINUX_COMPILER_H */
- 
- /* Define to 1 if you have the <linux/ethtool.h> header file. */
- /* #undef HAVE_LINUX_ETHTOOL_H */
- 
- /* Define to 1 if you have the <memory.h> header file. */
- #define HAVE_MEMORY_H 1
++/* Define to 1 if you have the <linux/usbdevice_fs.h> header file. */
++/* #undef HAVE_LINUX_USBDEVICE_FS_H */
 +
 +/* Define to 1 if you have the <netpacket/packet.h> header file. */
 +/* #undef HAVE_NETPACKET_PACKET_H */
 +
 +/* Define to 1 if you have the <net/bpf.h> header file. */
 +#define HAVE_NET_BPF_H 1
 +
++/* Define to 1 if you have the <net/enet.h> header file. */
++/* #undef HAVE_NET_ENET_H */
++
++/* Define to 1 if you have the <net/if_dl.h> header file. */
++/* #undef HAVE_NET_IF_DL_H */
++
++/* Define to 1 if you have the <net/if.h> header file. */
++/* #undef HAVE_NET_IF_H */
++
 +/* Define to 1 if you have the <net/if_media.h> header file. */
 +#define HAVE_NET_IF_MEDIA_H 1
 +
++/* Define to 1 if you have the <net/if_types.h> header file. */
++/* #undef HAVE_NET_IF_TYPES_H */
++
++/* Define to 1 if you have the <net/nit.h> header file. */
++/* #undef HAVE_NET_NIT_H */
++
++/* Define to 1 if you have the <net/pfilt.h> header file. */
++/* #undef HAVE_NET_PFILT_H */
++
 +/* Define to 1 if you have the <net/pfvar.h> header file. */
 +/* See Makefile */
 +/* #undef HAVE_NET_PFVAR_H */
 +
- /* if there's an os_proto.h for this platform, to use additional prototypes */
++/* Define to 1 if you have the <net/raw.h> header file. */
++/* #undef HAVE_NET_RAW_H */
++
++/* Use OpenSSL */
++/* #undef HAVE_OPENSSL */
++
++/* if there's an os-proto.h for this platform, to use additional prototypes */
 +/* #undef HAVE_OS_PROTO_H */
 +
- /* define if net/pfvar.h defines PF_NAT through PF_NORDR */
- #define HAVE_PF_NAT_THROUGH_PF_NORDR 1
++/* Define to 1 if you have a POSIX-style `strerror_r' function. */
++#define HAVE_POSIX_STRERROR_R /**/
 +
 +/* define if you have the Septel API */
 +/* #undef HAVE_SEPTEL_API */
 +
 +/* define if you have the Myricom SNF API */
 +/* #undef HAVE_SNF_API */
 +
- /* Define to 1 if you have the `snprintf' function. */
- #define HAVE_SNPRINTF 1
- 
 +/* Define to 1 if the system has the type `socklen_t'. */
 +#define HAVE_SOCKLEN_T 1
 +
++/* On solaris */
++/* #undef HAVE_SOLARIS */
++
++/* target host supports Solaris "any" device */
++/* #undef HAVE_SOLARIS_ANY_DEVICE */
++
++/* define if we have the Solaris/IRIX getnetbyname_r() */
++/* #undef HAVE_SOLARIS_IRIX_GETNETBYNAME_R */
++
++/* define if we have the Solaris/IRIX getprotobyname_r() */
++/* #undef HAVE_SOLARIS_IRIX_GETPROTOBYNAME_R */
++
 +/* Define to 1 if you have the <stdint.h> header file. */
 +#define HAVE_STDINT_H 1
 +
++/* Define to 1 if you have the <stdio.h> header file. */
++#define HAVE_STDIO_H 1
++
 +/* Define to 1 if you have the <stdlib.h> header file. */
 +#define HAVE_STDLIB_H 1
 +
- /* Define to 1 if you have the `strerror' function. */
- #define HAVE_STRERROR 1
- 
- /* Define to 1 if you have the `strerror_r' function. */
- #define HAVE_STRERROR_R 1
- 
- /* Define to 1 if you have the `strerror_s' function. */
- /* #undef HAVE_STRERROR_S */
- 
 +/* Define to 1 if you have the <strings.h> header file. */
 +#define HAVE_STRINGS_H 1
 +
 +/* Define to 1 if you have the <string.h> header file. */
 +#define HAVE_STRING_H 1
 +
 +/* Define to 1 if you have the `strlcat' function. */
 +#define HAVE_STRLCAT 1
 +
 +/* Define to 1 if you have the `strlcpy' function. */
 +#define HAVE_STRLCPY 1
 +
 +/* Define to 1 if you have the `strtok_r' function. */
 +#define HAVE_STRTOK_R 1
 +
 +/* Define to 1 if the system has the type `struct BPF_TIMEVAL'. */
 +/* #undef HAVE_STRUCT_BPF_TIMEVAL */
 +
 +/* Define to 1 if the system has the type `struct ether_addr'. */
 +/* #undef HAVE_STRUCT_ETHER_ADDR */
 +
++/* Define to 1 if `msg_control' is a member of `struct msghdr'. */
++/* #undef HAVE_STRUCT_MSGHDR_MSG_CONTROL */
++
++/* Define to 1 if `msg_flags' is a member of `struct msghdr'. */
++/* #undef HAVE_STRUCT_MSGHDR_MSG_FLAGS */
++
++/* Define to 1 if the system has the type `struct rte_ether_addr'. */
++/* #undef HAVE_STRUCT_RTE_ETHER_ADDR */
++
++/* Define to 1 if `hci_channel' is a member of `struct sockaddr_hci'. */
++/* #undef HAVE_STRUCT_SOCKADDR_HCI_HCI_CHANNEL */
++
 +/* Define to 1 if `sa_len' is a member of `struct sockaddr'. */
 +#define HAVE_STRUCT_SOCKADDR_SA_LEN 1
 +
 +/* Define to 1 if the system has the type `struct sockaddr_storage'. */
 +#define HAVE_STRUCT_SOCKADDR_STORAGE 1
 +
++/* Define to 1 if `tp_vlan_tci' is a member of `struct tpacket_auxdata'. */
++/* #undef HAVE_STRUCT_TPACKET_AUXDATA_TP_VLAN_TCI */
++
++/* Define to 1 if `bRequestType' is a member of `struct
++   usbdevfs_ctrltransfer'. */
++/* #undef HAVE_STRUCT_USBDEVFS_CTRLTRANSFER_BREQUESTTYPE */
++
 +/* Define to 1 if you have the <sys/bufmod.h> header file. */
 +/* #undef HAVE_SYS_BUFMOD_H */
 +
 +/* Define to 1 if you have the <sys/dlpi_ext.h> header file. */
 +/* #undef HAVE_SYS_DLPI_EXT_H */
 +
++/* Define to 1 if you have the <sys/dlpi.h> header file. */
++/* #undef HAVE_SYS_DLPI_H */
++
 +/* Define to 1 if you have the <sys/ioccom.h> header file. */
 +#define HAVE_SYS_IOCCOM_H 1
 +
- /* Define to 1 if you have the <sys/select.h> header file. */
- #define HAVE_SYS_SELECT_H 1
++/* Define to 1 if you have the <sys/net/nit.h> header file. */
++/* #undef HAVE_SYS_NET_NIT_H */
 +
 +/* Define to 1 if you have the <sys/sockio.h> header file. */
 +#define HAVE_SYS_SOCKIO_H 1
 +
 +/* Define to 1 if you have the <sys/stat.h> header file. */
 +#define HAVE_SYS_STAT_H 1
 +
 +/* Define to 1 if you have the <sys/types.h> header file. */
 +#define HAVE_SYS_TYPES_H 1
 +
 +/* define if you have the TurboCap API */
 +/* #undef HAVE_TC_API */
 +
 +/* Define to 1 if you have the <unistd.h> header file. */
 +#define HAVE_UNISTD_H 1
 +
- /* Define to 1 if you have the `vsnprintf' function. */
- #define HAVE_VSNPRINTF 1
++/* Define to 1 if you have the `vasprintf' function. */
++#define HAVE_VASPRINTF 1
++
++/* Define to 1 if you have the `vsyslog' function. */
++#define HAVE_VSYSLOG 1
++
++/* Define to 1 if you have the <zone.h> header file. */
++/* #undef HAVE_ZONE_H */
++
++/* Define to 1 if you have the `_wcserror_s' function. */
++/* #undef HAVE__WCSERROR_S */
++
++/* define if __atomic_load_n is supported by the compiler */
++#define HAVE___ATOMIC_LOAD_N 1
++
++/* define if __atomic_store_n is supported by the compiler */
++#define HAVE___ATOMIC_STORE_N 1
 +
 +/* IPv6 */
 +/* See Makefile */
 +/* #undef INET6 */
 +
- /* if unaligned access fails */
- /* #undef LBL_ALIGN */
- 
- /* path for device for USB sniffing */
- /* #undef LINUX_USB_MON_DEV */
- 
 +/* Define to 1 if netinet/ether.h declares `ether_hostton' */
 +/* #undef NETINET_ETHER_H_DECLARES_ETHER_HOSTTON */
 +
 +/* Define to 1 if netinet/if_ether.h declares `ether_hostton' */
- #define NETINET_IF_ETHER_H_DECLARES_ETHER_HOSTTON /**/
++/* #undef NETINET_IF_ETHER_H_DECLARES_ETHER_HOSTTON */
++
++/* Define to 1 if net/ethernet.h declares `ether_hostton' */
++#define NET_ETHERNET_H_DECLARES_ETHER_HOSTTON /**/
 +
 +/* do not use protochain */
 +/* #undef NO_PROTOCHAIN */
 +
 +/* Define to the address where bug reports for this package should be sent. */
 +#define PACKAGE_BUGREPORT ""
 +
 +/* Define to the full name of this package. */
 +#define PACKAGE_NAME "pcap"
 +
 +/* Define to the full name and version of this package. */
- #define PACKAGE_STRING "pcap 1.10.5"
++#define PACKAGE_STRING "pcap 1.10.6"
 +
 +/* Define to the one symbol short name of this package. */
 +#define PACKAGE_TARNAME "pcap"
 +
 +/* Define to the home page for this package. */
 +#define PACKAGE_URL ""
 +
 +/* Define to the version of this package. */
- #define PACKAGE_VERSION "1.10.5"
++#define PACKAGE_VERSION "1.10.6"
++
++/* target host supports Bluetooth sniffing */
++/* #undef PCAP_SUPPORT_BT */
++
++/* target host supports Bluetooth Monitor */
++/* #undef PCAP_SUPPORT_BT_MONITOR */
++
++/* support D-Bus sniffing */
++/* #undef PCAP_SUPPORT_DBUS */
++
++/* target host supports DPDK */
++/* #undef PCAP_SUPPORT_DPDK */
++
++/* target host supports Linux usbmon for USB sniffing */
++/* #undef PCAP_SUPPORT_LINUX_USBMON */
++
++/* target host supports netfilter sniffing */
++/* #undef PCAP_SUPPORT_NETFILTER */
 +
 +/* target host supports netmap */
 +#define PCAP_SUPPORT_NETMAP 1
 +
- /* use packet ring capture support on Linux if available */
- #define PCAP_SUPPORT_PACKET_RING 1
++/* The size of 'time_t', as computed by sizeof. */
++#ifdef __i386__
++#define SIZEOF_TIME_T 4
++#else
++#define SIZEOF_TIME_T 8
++#endif
++
++/* The size of `void *', as computed by sizeof. */
++/* #undef SIZEOF_VOID_P */
 +
- /* Define to 1 if you have the ANSI C header files. */
++/* Define to 1 if all of the C90 standard headers exist (not just the ones
++   required in a freestanding environment). This macro is provided for
++   backward compatibility; new code need not use it. */
 +#define STDC_HEADERS 1
 +
 +/* Define to 1 if strings.h declares `ffs' */
 +#define STRINGS_H_DECLARES_FFS /**/
 +
++/* Define to 1 if sys/ethernet.h declares `ether_hostton' */
++/* #undef SYS_ETHERNET_H_DECLARES_ETHER_HOSTTON */
++
 +/* Enable parser debugging */
 +/* #undef YYDEBUG */
 +
 +/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
 +   `char[]'. */
 +#define YYTEXT_POINTER 1
 +
- /* Enable large inode numbers on Mac OS X 10.5.  */
- #ifndef _DARWIN_USE_64_BIT_INODE
- # define _DARWIN_USE_64_BIT_INODE 1
- #endif
++/* Number of bits in a file offset, on hosts where this is settable. */
++/* #undef _FILE_OFFSET_BITS */
++
++/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
++/* #undef _LARGEFILE_SOURCE */
++
++/* Define for large files, on AIX-style hosts. */
++/* #undef _LARGE_FILES */
++
++/* define on AIX to get certain functions */
++/* #undef _SUN */
++
++/* to handle Ultrix compilers that don't support const in prototypes */
++/* #undef const */
 +
 +/* Define as token for inline if inlining supported */
 +#define inline inline
++
++/* on sinix */
++/* #undef sinix */
diff --cc sys/net/dlt.h
index 769bf5fecacb,000000000000..4227ce79d3b7
mode 100644,000000..100644
--- a/sys/net/dlt.h
+++ b/sys/net/dlt.h
@@@ -1,1586 -1,0 +1,1691 @@@
 +/*-
 + * Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
 + *	The Regents of the University of California.  All rights reserved.
 + *
 + * This code is derived from the Stanford/CMU enet packet filter,
 + * (net/enet.c) distributed as part of 4.3BSD, and code contributed
 + * to Berkeley by Steven McCanne and Van Jacobson both of Lawrence
 + * Berkeley Laboratory.
 + *
 + * Redistribution and use in source and binary forms, with or without
 + * modification, are permitted provided that the following conditions
 + * are met:
 + * 1. Redistributions of source code must retain the above copyright
 + *    notice, this list of conditions and the following disclaimer.
 + * 2. Redistributions in binary form must reproduce the above copyright
 + *    notice, this list of conditions and the following disclaimer in the
 + *    documentation and/or other materials provided with the distribution.
 + * 3. Neither the name of the University nor the names of its contributors
 + *    may be used to endorse or promote products derived from this software
 + *    without specific prior written permission.
 + *
 + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 + * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 + * SUCH DAMAGE.
++ *
++ *      @(#)bpf.h       7.1 (Berkeley) 5/7/91
 + */
 +
 +#ifndef _NET_DLT_H_
 +#define _NET_DLT_H_
 +
 +/*
 + * Link-layer header type codes.
 + *
 + * Do *NOT* add new values to this list without asking
 + * "tcpdump-workers@lists.tcpdump.org" for a value.  Otherwise, you run
 + * the risk of using a value that's already being used for some other
 + * purpose, and of having tools that read libpcap-format captures not
 + * being able to handle captures with your new DLT_ value, with no hope
 + * that they will ever be changed to do so (as that would destroy their
 + * ability to read captures using that value for that other purpose).
 + *
 + * See
 + *
 + *	https://www.tcpdump.org/linktypes.html
 + *
 + * for detailed descriptions of some of these link-layer header types.
 + */
 +
 +/*
 + * These are the types that are the same on all platforms, and that
 + * have been defined by <net/bpf.h> for ages.
++ *
++ * DLT_LOW_MATCHING_MIN is the lowest such value; DLT_LOW_MATCHING_MAX
++ * is the highest such value.
 + */
++#define DLT_LOW_MATCHING_MIN	0
++
 +#define DLT_NULL	0	/* BSD loopback encapsulation */
 +#define DLT_EN10MB	1	/* Ethernet (10Mb) */
 +#define DLT_EN3MB	2	/* Experimental Ethernet (3Mb) */
 +#define DLT_AX25	3	/* Amateur Radio AX.25 */
 +#define DLT_PRONET	4	/* Proteon ProNET Token Ring */
 +#define DLT_CHAOS	5	/* Chaos */
 +#define DLT_IEEE802	6	/* 802.5 Token Ring */
 +#define DLT_ARCNET	7	/* ARCNET, with BSD-style header */
 +#define DLT_SLIP	8	/* Serial Line IP */
 +#define DLT_PPP		9	/* Point-to-point Protocol */
 +#define DLT_FDDI	10	/* FDDI */
 +
++/*
++ * In case the code that includes this file (directly or indirectly)
++ * has also included OS files that happen to define DLT_LOW_MATCHING_MAX,
++ * with a different value (perhaps because that OS hasn't picked up
++ * the latest version of our DLT definitions), we undefine the
++ * previous value of DLT_LOW_MATCHING_MAX.
++ *
++ * (They shouldn't, because only those 10 values were assigned in
++ * the Good Old Days, before DLT_ code assignment became a bit of
++ * a free-for-all.  Perhaps 11 is DLT_ATM_RFC1483 everywhere 11
++ * is used at all, but 12 is DLT_RAW on some platforms but not
++ * OpenBSD, and the fun continues for several other values.)
++ */
++#ifdef DLT_LOW_MATCHING_MAX
++#undef DLT_LOW_MATCHING_MAX
++#endif
++
++#define DLT_LOW_MATCHING_MAX	DLT_FDDI	/* highest value in this "matching" range */
++
 +/*
 + * These are types that are different on some platforms, and that
 + * have been defined by <net/bpf.h> for ages.  We use #ifdefs to
 + * detect the BSDs that define them differently from the traditional
 + * libpcap <net/bpf.h>
 + *
 + * XXX - DLT_ATM_RFC1483 is 13 in BSD/OS, and DLT_RAW is 14 in BSD/OS,
-  * but I don't know what the right #define is for BSD/OS.
++ * but I don't know what the right #define is for BSD/OS.  The last
++ * release was in October 2003; if anybody cares about making this
++ * work on BSD/OS, give us a pull request for a change to make it work.
 + */
 +#define DLT_ATM_RFC1483	11	/* LLC-encapsulated ATM */
 +
 +#ifdef __OpenBSD__
 +#define DLT_RAW		14	/* raw IP */
 +#else
 +#define DLT_RAW		12	/* raw IP */
 +#endif
 +
 +/*
 + * Given that the only OS that currently generates BSD/OS SLIP or PPP
 + * is, well, BSD/OS, arguably everybody should have chosen its values
 + * for DLT_SLIP_BSDOS and DLT_PPP_BSDOS, which are 15 and 16, but they
 + * didn't.  So it goes.
 + */
 +#if defined(__NetBSD__) || defined(__FreeBSD__)
 +#ifndef DLT_SLIP_BSDOS
 +#define DLT_SLIP_BSDOS	13	/* BSD/OS Serial Line IP */
 +#define DLT_PPP_BSDOS	14	/* BSD/OS Point-to-point Protocol */
 +#endif
 +#else
 +#define DLT_SLIP_BSDOS	15	/* BSD/OS Serial Line IP */
 +#define DLT_PPP_BSDOS	16	/* BSD/OS Point-to-point Protocol */
 +#endif
 +
 +/*
 + * NetBSD uses 15 for HIPPI.
 + *
 + * From a quick look at sys/net/if_hippi.h and sys/net/if_hippisubr.c
 + * in an older version of NetBSD , the header appears to be:
 + *
-  * 	a 1-byte ULP field (ULP-id)?
++ *	a 1-byte ULP field (ULP-id)?
 + *
 + *	a 1-byte flags field;
 + *
 + *	a 2-byte "offsets" field;
 + *
 + *	a 4-byte "D2 length" field (D2_Size?);
 + *
 + *	a 4-byte "destination switch" field (or a 1-byte field
 + *	containing the Forwarding Class, Double_Wide, and Message_Type
 + *	sub fields, followed by a 3-byte Destination_Switch_Address
 + *	field?, HIPPI-LE 3.4-style?);
 + *
 + *	a 4-byte "source switch" field (or a 1-byte field containing the
 + *	Destination_Address_type and Source_Address_Type fields, followed
 + *	by a 3-byte Source_Switch_Address field, HIPPI-LE 3.4-style?);
 + *
 + *	a 2-byte reserved field;
 + *
 + *	a 6-byte destination address field;
 + *
 + *	a 2-byte "local admin" field;
 + *
 + *	a 6-byte source address field;
 + *
 + * followed by an 802.2 LLC header.
 + *
 + * This looks somewhat like something derived from the HIPPI-FP 4.4
 + * Header_Area, followed an HIPPI-FP 4.4 D1_Area containing a D1 data set
 + * with the header in HIPPI-LE 3.4 (ANSI X3.218-1993), followed by an
 + * HIPPI-FP 4.4 D2_Area (with no Offset) containing the 802.2 LLC header
 + * and payload?  Or does the "offsets" field contain the D2_Offset,
 + * with that many bytes of offset before the payload?
 + *
 + * See http://wotug.org/parallel/standards/hippi/ for an archive of
 + * HIPPI specifications.
 + *
 + * RFC 2067 imposes some additional restrictions.  It says that the
 + * Offset is always zero
 + *
 + * HIPPI is long-gone, and the source files found in an older version
 + * of NetBSD don't appear to be in the main CVS branch, so we may never
 + * see a capture with this link-layer type.
 + */
 +#if defined(__NetBSD__)
 +#define DLT_HIPPI	15	/* HIPPI */
 +#endif
 +
 +/*
 + * NetBSD uses 16 for DLT_HDLC; see below.
 + * BSD/OS uses it for PPP; see above.
 + * As far as I know, no other OS uses it for anything; don't use it
 + * for anything else.
 + */
 +
 +/*
 + * 17 was used for DLT_PFLOG in OpenBSD; it no longer is.
 + *
 + * It was DLT_LANE8023 in SuSE 6.3, so we defined LINKTYPE_PFLOG
 + * as 117 so that pflog captures would use a link-layer header type
 + * value that didn't collide with any other values.  On all
 + * platforms other than OpenBSD, we defined DLT_PFLOG as 117,
 + * and we mapped between LINKTYPE_PFLOG and DLT_PFLOG.
 + *
 + * OpenBSD eventually switched to using 117 for DLT_PFLOG as well.
 + *
 + * Don't use 17 for anything else.
 + */
 +
 +/*
 + * 18 is used for DLT_PFSYNC in OpenBSD, NetBSD, DragonFly BSD and
 + * macOS; don't use it for anything else.  (FreeBSD uses 121, which
 + * collides with DLT_HHDLC, even though it doesn't use 18 for
 + * anything and doesn't appear to have ever used it for anything.)
 + *
 + * We define it as 18 on those platforms; it is, unfortunately, used
-  * for DLT_CIP in Suse 6.3, so we don't define it as DLT_PFSYNC
-  * in general.  As the packet format for it, like that for
-  * DLT_PFLOG, is not only OS-dependent but OS-version-dependent,
-  * we don't support printing it in tcpdump except on OSes that
-  * have the relevant header files, so it's not that useful on
-  * other platforms.
++ * for DLT_CIP in SUSE 6.3, so we don't define it as 18 on all
++ * platforms. We define it as 121 on FreeBSD and as the same
++ * value that we assigned to LINKTYPE_PFSYNC on all remaining
++ * platforms.
 + */
 +#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || defined(__APPLE__)
 +#define DLT_PFSYNC	18
 +#endif
 +
 +#define DLT_ATM_CLIP	19	/* Linux Classical IP over ATM */
 +
*** 1494 LINES SKIPPED ***


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69b62f77.4495f.7d4ef563>