libpcap: Update to version 1.10.5
Commit Message
- Update from version 1.10.4 to 1.10.5
- Update of rootfile
- Fixes for 2 CVE's
- Changelog
1.10.5
Source code:
Spell WirelessHART details properly.
Mark pcap_vasprintf() as printf-like.
Finalize moving of bpf_filter.c. (GH #1166)
Remove an unneeded argument from gen_mcode6().
Don't do some Berkeley YACC workarounds with YACC releases not
requiring them.
Use correct data types rather than int in some cases.
Squelch compiler warning in grammar.c.
Fix findalldevtest compilation if IPv6 isn't enabled.
Rename helper routines for pcap modules to have names beginning with
pcapint_, to avoid namespace collisions for code linking statically
with libpcap.
Avoid casting hack for the Windows cleanup-on-exit routine.
Use %zu format for one case of printing a size_t.
Fix some Coverity errors.
Fix availabilities of some functions to match reality.
pcap: make the seconds and microseconds/nanoseconds fields unsigned.
Remove the unused pcap-rpcap-int.h header file.
Thread safety:
Make some static variables thread-local; fixes issue #1174.
Packet filtering:
Improve reporting of some invalid filter expressions.
Return an error from pcap_compile() if the scanner fails to initialize.
Optimizer fix from Archit Shah to recompute dominators after
moving code (#976); fixes #945 (although the resulting filter
isn't empty).
Optimizer fix from Archit Shah to mark value as unknown when store
of that value is deleted (#972); fixes #143, #434, #436, #437,
and #1076.
Linux:
Properly return warnings.
Don't use DLT_LINUX_SLL2 for anything other than the "any" device.
Avoid 32-bit unsigned integer overflow in USB captures. Fixes
issues #1134 and #1205.
Fix a file descriptor leak.
Properly report warnings about unknown ARPHRD_ types.
Fix DLT_CAN_SOCKETCAN handling of CAN FD.
Add CAN XL support to DLT_CAN_SOCKETCAN.
Clean up the code that sets the "real" ("original") length for
isochronous USB transfers.
Avoid unnecessary blocking on recvmsg() in the Bluetooth monitor and
Bluetoth modules.
Solaris:
Handle BPF returning ESRCH for unknown devices.
List the "any" device if it's supported.
Report {non-existent zone}/{interface} errors appropriately.
Allow attaching to links owned by a non-global zone. (Based on
pull request #1202.)
Fix AF_LINK handling on illumos.
macOS:
Redid the availability macros to be closer to what Apple's doing
in recent SDKs, including tagging pcap-namedb.h routines.
Fix the install name of the installed shared library to have a
full path when building with CMake.
Fix universal builds.
Haiku:
Convert the module to C. Fixes issue #1114.
Address a few compiler warnings. Fixes issue #1114.
Fix various build problems. Fixes issue #1114.
Report non-existent devices correctly.
Fix handling of packet statistics.
Fix packet timestamping.
Fix packet filtering with low snaplen.
Improve connection status reporting.
Add support for promiscuous mode.
Detect DLTs and loopback capture support at run time.
Report IEEE 802.11 as PCAP_IF_WIRELESS.
Windows:
Fix internal handling of "not supported" error codes from NPF.
Work around a bug in Npcap 1.00 in case of driver version mismatch.
Don't call WSACleanup() when handling a failed WSAStartup().
BSD, macOS, AIX, Solaris 11, Linux:
Add a new error PCAP_ERROR_CAPTURE_NOTSUP, for use if a capture
mechanism is not present, in the hopes that, for example,
attempts to capture on Windows Services for Linux 1, in which
the NT kernel attempts to simulate Linux system calls but does
not support packet sockets, can get an error that better
indicates the underlying problem.
AirPcap:
Format an error message if we run out of memory.
nflog:
Fix count of dropped packets.
Make sure we don't overflow when rounding up the TLV length.
rpcap:
Handle routines removed in at least some OpenSSL libraries.
CVE-2023-7256: Clean up sock_initaddress() and its callers to avoid
double frees in some cases.
Don't define SOCKET ourselves; instead, define PCAP_SOCKET as int
on UN*Xes and as SOCKET on Windows.
CVE-2024-8006: Fix pcap_findalldevs_ex() not to crash if passed a
file:// URL with a path to a directory that cannot be opened.
Savefiles:
Handle DLT_/LINKTYPE_ mapping better, to handle some
OpenBSD-specific link types better.
Treat if_tsoffset as signed in pcapng files, as the spec says.
Don't try to fix the "real" length for isochronous USB
transfers if the number of USB descriptors is too large.
Reject pcap files where one of the reserved fields in the
"link-layer type plus other stuff" is non-zero.
Building and testing:
Add a configure option to help debugging (--enable-instrument-functions).
Improved tests and error reporting for uses of pkg-config, and
improve help message.
Fix Haiku build.
With CMake, install headers in CMAKE_INSTALL_INCLUDEDIR rather
than just include.
Build libpcap.a before building test programs.
Print address family numerically, as well as symbolically,
in findalldevstest.
Fail with suggestions, rather than failing over to no capture
support, if no capture mechanism was found. Fixes issue #1016.
Don't indent comments in Make, as that may cause them not to be
recognized as comments.
Don't check for libssl if we aren't going to use it.
Better handle enabling and disabling of sanitizers. Fixes issue
#1171.
CMakeLists.txt: Print "Symlinking: /some/path to ..." conditionally.
Evaluate CMAKE_INSTALL_PREFIX at install time.
cmake: Update the minimum required version to 2.8.12 (except Windows).
cmake: suppress CMP0042 OLD deprecated warning.
Makefile.in: Add the releasecheck target.
Cirrus CI: Add the "make releasecheck" command in the Linux task.
Makefile.in: Add the whitespacecheck target.
Cirrus CI: Run the "make whitespacecheck" command in the Linux task.
Autoconf: Update config.{guess,sub}, timestamps 2024-01-01.
Autoconf: Update the install-sh script to the 2020-11-14.01 version.
Compile with '-Wnull-pointer-subtraction',
'-Wunused-but-set-parameter', and '-Wunused-but-set-variable' in
devel mode if supported.
Don't ignore spaces between CMAKE_C_FLAGS and DPDK_C_FLAGS with
CMake.
Use noreturn and __format__ with XL C 7.0 and later.
Check for the same -W flags in autotools and CMake.
Autoconf: Add autogen.sh, remove configure and config.h.in and put
these generated files in the release tarball.
Autoconf: Get the size of a time_t.
Fix propagation of cc_werr_cflags() output.
Makefile.in(s): Fix the depend target.
mkdep: Exit with a non-zero status if a command fails.
Fix HCI_CHANNEL_MONITOR detection with musl libc.
Extend "make shellcheck" onto mkdep too.
Add initial support for building with TinyCC.
Address all known compiler warnings specific to illumos, Linux, NetBSD,
Solaris and Sun C; in CI expect warnings specific to TinyCC only.
Documentation:
Update and fix pcap-filter man page.
Add a README.haiku.md file.
Document pcap-config better.
Man page formatting and prose fixes.
Rename doc/README.Win32.md to doc/README.windows.md.
Update pcap-savefile man page to match the Internet-Draft for
pcap.
Fix CMake issues for target used by other projects.
Explain "any" device better in pcap_open_live(3PCAP).
Update INSTALL.md.
Note in man pages that errbuf arguments must point to an error
buffer.
Note that if pcap_findalldevs() fails it sets *alldevsp to NULL;
there's no devices list to free.
Explain "other addresses" in pcap_findalldevs(3PCAP).
Document pcap_lookupnet(3PCAP) a bit better.
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
config/rootfiles/common/libpcap | 2 +-
lfs/libpcap | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
@@ -21,7 +21,7 @@
#usr/lib/libpcap.a
usr/lib/libpcap.so
usr/lib/libpcap.so.1
-usr/lib/libpcap.so.1.10.4
+usr/lib/libpcap.so.1.10.5
#usr/lib/pkgconfig/libpcap.pc
#usr/share/man/man1/pcap-config.1
#usr/share/man/man3/pcap.3pcap
@@ -1,7 +1,7 @@
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2023 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
@@ -24,10 +24,10 @@
include Config
-VER = 1.10.4
+VER = 1.10.5
THISAPP = libpcap-$(VER)
-DL_FILE = $(THISAPP).tar.gz
+DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
@@ -42,7 +42,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = 05a7eafc1e1817f7844008db89d8fb10cd2525c22f7ee6c9e3d582b14229412f38ccced5e9d80a96dd459ef9eab12eccb5c1dd4978ddc9f66267469212005e4c
+$(DL_FILE)_BLAKE2 = eafc01c0b865f7e7917dcf353ce8e79cea8981eb68068a20b50d9650e1aa89874d3fd6bbfa93ff61ec9edbb610d22cd5f09c0723c12e95005725c66436658d2b
install : $(TARGET)
@@ -71,7 +71,7 @@ $(subst %,%_BLAKE2,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+ @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && ./configure \
--prefix=/usr \
--enable-bluetooth=no \