git: dd744a896be3 - main - libpcap: Update to 1.10.4
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 05 May 2023 13:57:08 UTC
The branch main has been updated by jrm: URL: https://cgit.FreeBSD.org/src/commit/?id=dd744a896be358d6f001766188da6aed80e00378 commit dd744a896be358d6f001766188da6aed80e00378 Merge: b10e100d1696 6b96668d5b49 Author: Joseph Mingrone <jrm@FreeBSD.org> AuthorDate: 2023-05-05 13:56:10 +0000 Commit: Joseph Mingrone <jrm@FreeBSD.org> CommitDate: 2023-05-05 13:56:10 +0000 libpcap: Update to 1.10.4 Changelog: https://git.tcpdump.org/libpcap/blob/104271ba4a14de6743e43bcf87536786d8fddea4:/CHANGES Reviewed by: emaste Obtained from: https://www.tcpdump.org/release/libpcap-1.10.4.tar.gz Sponsored by: The FreeBSD Foundation contrib/libpcap/CHANGES | 38 ++++++++++----- contrib/libpcap/Makefile.in | 4 +- contrib/libpcap/README.md | 2 +- contrib/libpcap/VERSION | 2 +- contrib/libpcap/aclocal.m4 | 13 +++-- contrib/libpcap/config.guess | 12 +++-- contrib/libpcap/config.sub | 33 +++++++++---- contrib/libpcap/configure | 64 ++++++++++++------------- contrib/libpcap/configure.ac | 26 +++++----- contrib/libpcap/gencode.c | 16 +++---- contrib/libpcap/mkdep | 2 +- contrib/libpcap/msdos/makefile | 8 ++-- contrib/libpcap/nametoaddr.c | 40 ++++++++-------- contrib/libpcap/optimize.c | 16 +++---- contrib/libpcap/pcap-bt-linux.c | 6 +-- contrib/libpcap/pcap-common.c | 4 +- contrib/libpcap/pcap-libdlpi.c | 2 +- contrib/libpcap/pcap-linux.c | 8 ++-- contrib/libpcap/pcap-netfilter-linux.c | 4 +- contrib/libpcap/pcap-npf.c | 6 +-- contrib/libpcap/pcap-sita.c | 2 +- contrib/libpcap/pcap-sita.html | 22 ++++----- contrib/libpcap/pcap-snf.c | 20 ++++---- contrib/libpcap/pcap-usb-linux.c | 14 +++--- contrib/libpcap/pcap/bpf.h | 6 +-- contrib/libpcap/pcap/dlt.h | 4 +- contrib/libpcap/pcap/pcap.h | 4 +- contrib/libpcap/rpcapd/Makefile.in | 2 +- contrib/libpcap/rpcapd/org.tcpdump.rpcapd.plist | 2 +- contrib/libpcap/rpcapd/rpcapd.manadmin.in | 42 +++++++++++++++- contrib/libpcap/sockutils.c | 2 +- contrib/libpcap/testprogs/Makefile.in | 2 +- 32 files changed, 252 insertions(+), 176 deletions(-) diff --cc contrib/libpcap/README.md index 46c33c24125e,000000000000..e38b9a15d6b3 mode 100644,000000..100644 --- a/contrib/libpcap/README.md +++ b/contrib/libpcap/README.md @@@ -1,76 -1,0 +1,76 @@@ +# LIBPCAP 1.x.y by [The Tcpdump Group](https://www.tcpdump.org) + +**To report a security issue please send an e-mail to security@tcpdump.org.** + +To report bugs and other problems, contribute patches, request a +feature, provide generic feedback etc please see the +[guidelines for contributing](CONTRIBUTING.md). + +The [documentation directory](doc/) has README files about specific +operating systems and options. + +Anonymous Git is available via: + + https://github.com/the-tcpdump-group/libpcap.git + +This directory contains source code for libpcap, a system-independent +interface for user-level packet capture. libpcap provides a portable +framework for low-level network monitoring. Applications include +network statistics collection, security monitoring, network debugging, +etc. Since almost every system vendor provides a different interface +for packet capture, and since we've developed several tools that +require this functionality, we've created this system-independent API +to ease in porting and to alleviate the need for several +system-dependent packet capture modules in each application. + +```text - formerly from Lawrence Berkeley National Laboratory ++formerly from Lawrence Berkeley National Laboratory + Network Research Group <libpcap@ee.lbl.gov> + ftp://ftp.ee.lbl.gov/old/libpcap-0.4a7.tar.Z +``` + +### Support for particular platforms and BPF +For some platforms there are `README.{system}` files that discuss issues +with the OS's interface for packet capture on those platforms, such as +how to enable support for that interface in the OS, if it's not built in +by default. + +The libpcap interface supports a filtering mechanism based on the +architecture in the BSD packet filter. BPF is described in the 1993 +Winter Usenix paper ``The BSD Packet Filter: A New Architecture for +User-level Packet Capture'' +([compressed PostScript](https://www.tcpdump.org/papers/bpf-usenix93.ps.Z), +[gzipped PostScript](https://www.tcpdump.org/papers/bpf-usenix93.ps.gz), +[PDF](https://www.tcpdump.org/papers/bpf-usenix93.pdf)). + +Although most packet capture interfaces support in-kernel filtering, +libpcap utilizes in-kernel filtering only for the BPF interface. +On systems that don't have BPF, all packets are read into user-space +and the BPF filters are evaluated in the libpcap library, incurring +added overhead (especially, for selective filters). Ideally, libpcap +would translate BPF filters into a filter program that is compatible +with the underlying kernel subsystem, but this is not yet implemented. + +BPF is standard in 4.4BSD, BSD/OS, NetBSD, FreeBSD, OpenBSD, DragonFly +BSD, macOS, and Solaris 11; an older, modified and undocumented version +is standard in AIX. {DEC OSF/1, Digital UNIX, Tru64 UNIX} uses the +packetfilter interface but has been extended to accept BPF filters +(which libpcap utilizes). + +Linux has a number of BPF based systems, and libpcap does not support +any of the eBPF mechanisms as yet, although it supports many of the +memory mapped receive mechanisms. +See the [Linux-specific README](doc/README.linux) for more information. + +### Note to Linux distributions and *BSD systems that include libpcap: + +There's now a rule to make a shared library, which should work on Linux +and *BSD, among other platforms. + +It sets the soname of the library to `libpcap.so.1`; this is what it +should be, **NOT** `libpcap.so.1.x` or `libpcap.so.1.x.y` or something such as +that. + +We've been maintaining binary compatibility between libpcap releases for +quite a while; there's no reason to tie a binary linked with libpcap to +a particular release of libpcap.