Log message:
tcpdump: updated to 4.99.5
Summary for 4.99.5 tcpdump release
Refine protocol decoding for:
Arista: Use the test .pcap file from pull request 955 (HwInfo).
BGP: Fix an undefined behavior when it tries to parse a too-short packet.
CARP: Print the protocol name before any GET_().
CDP: only hex-dump unknown TLVs in verbose mode.
DHCP: parse the SZTP redirect tag.
DHCPv6: client-id/server-id DUID type 2 correction; parse the user class,
boot file URL, and SZTP redirect options; add DUID-UUID printing
(RFC6355).
DNS: Detect and correctly handle too-short URI RRs.
EAP: Assign ndo_protocol in the eap_print() function.
ESP: Don't use EVP_add_cipher_alias() (fixes building on OpenBSD 7.5).
Frame Relay (Multilink): Fix the Timestamp Information Element printing.
ICMPv6: Fix printing the Home Agent Address Discovery Reply Message.
IEEE 802.11: no need for an element ID in the structures for IEs, make
the length in the IE structures a u_int, include the "TA" field while
printing Block Ack Control frame.
IP: Enable TSO (TCP Segmentation Offload) support; fix printing invalid
cases as invalid, not truncated; use ND_ICHECKMSG_ZU() to test the
header length.
IPv6: Fix printing invalid cases as invalid, not truncated; use
ND_ICHECKMSG_U() to print an invalid version.
IPv6: Fix invalid 32-bit versus 64-bit printouts of fragment headers.
ISAKMP: Fix printing Delete payload SPI when size is zero.
Kerberos: Print the protocol name, remove a redundant bounds check.
lwres: Fix an undefined behavior in pointer arithmetic.
OpenFlow 1.0: Fix indentation of PORT_MOD, improve handling of
some lengths, and fix handling of snapend.
TCP: Test ports < 1024 in port order to select the printer.
UDP: Move source port equal BCM_LI_PORT to bottom of long if else chain.
UDP: Test ports < 1024 in port order to select the printer.
LDP: Add missing fields of the Common Session Parameters TLV and fix the
offset for the A&D bits.
NFLOG: Use correct AF code points on all OSes.
NFS: Avoid printing non-ASCII characters.
OSPF: Pad TLVs in LS_OPAQUE_TYPE_RI to multiples of 4 bytes.
OSPF: Update LS-Ack printing not to run off the end of the packet.
OSPF6: Fix an undefined behavior.
pflog: use nd_ types in struct pfloghdr.
PPP: Check if there is some data to hexdump.
PPP: Remove an extra colon before LCP Callback Operation.
Use the buffer stack for de-escaping PPP; fixes CVE-2024-2397;
Note: This problem does not affect any tcpdump release.
PTP: Fix spelling of type SIGNALING, Parse major and minor version
correctly, Print majorSdoId field instead of just the first bit.
RIP: Make a couple trivial protocol updates.
RPKI-Router: Refine length and bounds checks.
RX: Use the "%Y-%m-%d" date format.
smbutil.c: Use the "%Y-%m-%d" date format.
SNMP: Fix two undefined behaviors.
Text protocols: Fix printing truncation if it is not the case.
ZEP: Use the "%Y-%m-%d" date format.
ZMTP: Replace custom code with bittok2str().
User interface:
Print the supported time stamp types (-J) to stdout instead of stderr.
Print the list of data link types (-L) to stdout instead of stderr.
Use symmetrical quotation characters in error messages.
Update --version option to print 32/64-bit build and time_t size.
Improve error messages for invalid interface indexes specified
with -i.
Support "3des" as an alias for "des_ede3_cbc" even if \
the crypto
library doesn't support adding aliases.
Source code:
tcpdump: Fix a memory leak.
child_cleanup: reap as many child processes as possible.
Ignore failures when setting the default "any" device DLL to \
LINUX_SLL2.
Fix for backends which doesn't support capsicum.
Update ND_BYTES_BETWEEN() macro for better accuracy.
Update ND_BYTES_AVAILABLE_AFTER() macro for better accuracy.
Introduce new ND_ICHECK*() macros to deduplicate more code.
Skip privilege dropping when using -Z root on --with-user builds.
Add a nd_printjn() function.
Make nd_trunc_longjmp() not static inline.
Include <time.h> from netdissect.h.
Remove init_crc10_table() and the entourage.
Initialize tzcode early.
Capsicum support: Fix a 'not defined' macro error.
Update the "Error converting time" tests for packet times.
Fix warnings when building for 32-bit and defining _TIME_BITS=64.
Free interface list just before exiting where it wasn't being
freed.
Building and testing:
Add a configure option to help debugging (--enable-instrument-functions).
At build time require a proof of suitable snprintf(3) implementation in
libc (and document Solaris 9 as unsupported because of that).
Makefile.in: Add two "touch .devel" commands in the releasecheck \
target.
Autoconf: Get --with-user and --with-chroot right.
Autoconf: Fix --static-pcap-only test on Solaris 10.
Autoconf: Add some warning flags for clang 13 or newer.
Autoconf: Update config.{guess,sub}, timestamps 2024-01-01.
Autoconf: Add autogen.sh, remove configure and config.h.in and put
these generated files in the release tarball.
Autoconf: Update the install-sh script to the 2020-11-14.01 version.
configure: Apply autoupdate 2.69.
CMake: improve the comment before project(tcpdump C).
Do not require vsnprintf().
tests: Use the -tttt option, by default, for the tests.
Autoconf, CMake: Get the size of a void * and a time_t.
Fix propagation of cc_werr_cflags() output.
Makefile.in: Fix the depend target.
mkdep: Exit with a non-zero status if a command fails.
Autoconf: use V_INCLS to update the list of include search paths.
Autoconf: don't put anything before -I and -L flags for local libpcap.
Autoconf, CMake: work around an Xcode 15+ issue.
Autoconf, CMake: use pkg-config and Homebrew when looking for
libcrypto.
Fix Sun C invocation from CMake.
mkdep: Use TMPDIR if it is set and not null.
Add initial support for building with TinyCC.
Makefile.in: Use the variable MAKE instead of the make command.
Makefile.in: Add instrumentation configuration in releasecheck target.
Make various improvements to the TESTrun script.
Untangle detection of pcap_findalldevs().
Autoconf: don't use egrep, use $EGREP.
Autoconf: check for gethostbyaddr(), not gethostbyname().
Autoconf, CMake: search for gethostbyaddr() in libnetwork.
Make illumos build warning-free.
Documentation:
Fixed errors in doc/README.Win32.md and renamed it to README.windows.md.
Make various improvements to the man page.
Add initial README file for Haiku.
Make various improvements to CONTRIBUTING.md.
|
Log message:
tcpdump: updated to 4.99.3
Thursday, January 12, 2023 / The Tcpdump Group
Summary for 4.99.3 tcpdump release
Updated printers:
PTP: Use the proper values for the control field and print un-allocated
values for the message field as "Reserved" instead of \
"none".
Source code:
smbutil.c: Replace obsolete function call (asctime)
Building and testing:
cmake: Update the minimum required version to 2.8.12 (except Windows).
CI: Introduce and use TCPDUMP_CMAKE_TAINTED.
Makefile.in: Add the releasecheck target.
Makefile.in: Add "make -s install" in the releasecheck target.
Cirrus CI: Run 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.
Address all shellcheck warnings in update-test.sh.
Makefile.in: Get rid of a remain of gnuc.h.
Documentation:
Reformat the installation notes (INSTALL.txt) in Markdown.
Convert CONTRIBUTING to Markdown.
CONTRIBUTING.md: Document the use of "protocol: " in a commit \
summary.
Add a README file for NetBSD.
Fix CMake build to set man page section numbers in tcpdump.1
Saturday, December 31, 2022 / The Tcpdump Group
Summary for 4.99.2 tcpdump release
Updated printers:
BGP: Update cease notification decoding to RFC 9003.
BGP: decode BGP link-bandwidth extended community properly.
BGP: Fix parsing the AIGP attribute
BGP: make sure the path attributes don't go past the end of the packet.
BGP: Shutdown message can be up to 255 bytes length according to rfc9003
DSA: correctly determine VID.
EAP: fix some length checks and output issues.
802.11: Fix the misleading comment regarding "From DS", "To \
DS" Frame
Control Flags.
802.11: Fetch the CF and TIM IEs a field at a time.
802.15.4, BGP, LISP: fix some length checks, compiler warnings,
and undefined behavior warnings.
PFLOG: handle LINKTYPE_PFLOG/DLT_PFLOG files from all OSes on all
OSes.
RRCP: support more Realtek protocols than just RRCP.
MPLS: show the EXP field as TC, as per RFC 5462.
ICMP: redo MPLS Extension code as general ICMP Extension code.
VQP: Do not print unknown error codes twice.
Juniper: Add some bounds checks.
Juniper: Don't treat known DLT_ types as "Unknown".
lwres: Fix a length check, update a variable type.
EAP: Fix some undefined behaviors at runtime.
Ethernet: Rework the length checks, add a length check.
IPX: Add two length checks.
Zephyr: Avoid printing non-ASCII characters.
VRRP: Print the protocol name before any GET_().
DCCP: Get rid of trailing commas in lists.
Juniper: Report invalid packets as invalid, not truncated.
IPv6: Remove an obsolete code in an always-false #if wrapper.
ISAKMP: Use GET_U_1() to replace a direct dereference.
RADIUS: Use GET_U_1() to replace a direct dereference.
TCP: Fix an invalid check.
RESP: Fix an invalid check.
RESP: Remove an unnecessary test.
Arista: Refine the output format and print HwInfo.
sFlow: add support for IPv6 agent, add a length check.
VRRP: add support for IPv6.
OSPF: Update to match the Router Properties registry.
OSPF: Remove two unnecessary dereferences.
OSPF: Add support bit Nt RFC3101.
OSPFv3: Remove two unnecessary dereferences.
ICMPv6: Fix output for Router Renumbering messages.
ICMPv6: Fix the Node Information flags.
ICMPv6: Remove an unused macro and extra blank lines.
ICMPv6: Add a length check in the rpl_dio_print() function.
ICMPv6: Use GET_IP6ADDR_STRING() in the rpl_dio_print() function.
IPv6: Add some checks for the Hop-by-Hop Options header
IPv6: Add a check for the Jumbo Payload Hop-by-Hop option.
NFS: Fix the format for printing an unsigned int
PTP: fix printing of the correction fields
PTP: Use ND_LCHECK_U for checking invalid length.
WHOIS: Add its own printer source file and printer function
MPTCP: print length before subtype inside MPTCP options
ESP: Add a workaround to a "use-of-uninitialized-value".
PPP: Add tests to avoid incorrectly re-entering ppp_hdlc().
PPP: Don't process further if protocol is unknown (-e option).
PPP: Change the pointer to packet data.
ZEP: Add three length checks.
Add some const qualifiers.
Building and testing:
Update config.guess and config.sub.
Use AS_HELP_STRING macro instead of AC_HELP_STRING.
Handle some Autoconf/make errors better.
Fix an error when cross-compiling.
Use "git archive" for the "make releasetar" process.
Remove the release candidate rcX targets.
Mend "make check" on Solaris 9 with Autoconf.
Address assorted compiler warnings.
Fix auto-enabling of Capsicum on FreeBSD with Autoconf.
Treat "msys" as Windows for test exit statuses.
Clean up some help messages in configure.
Use unified diff by default.
Remove awk code from mkdep.
Fix configure test errors with Clang 15
CMake: Prevent stripping of the RPATH on installation.
AppVeyor CI: update Npcap site, update to 1.12 SDK.
Cirrus CI: Use the same configuration as for the main branch.
CI: Add back running tcpdump -J/-L and capture, now with Cirrus VMs.
Remove four test files (They are now in the libpcap tests directory).
On Solaris, for 64-bit builds, use the 64-bit pcap-config.
Tell CMake not to check for a C++ compiler.
CMake: Add a way to request -Werror and equivalents.
configure: Special-case macOS /usr/bin/pcap-config as we do in CMake.
configure: Use pcap-config --static-pcap-only if available.
configure: Use ac_c_werror_flag to force unknown compiler flags to fail.
configure: Use AC_COMPILE_IFELSE() and AC_LANG_SOURCE() for testing
flags.
Run the test that fails on OpenBSD only if we're not on OpenBSD.
Source code:
Fix some snapend-changing routines to protect against pointer
underflow.
Use __func__ from C99 in some function calls.
Memory allocator: Update nd_add_alloc_list() to a static function.
addrtoname.c: Fix two invalid tests.
Use more S_SUCCESS and S_ERR_HOST_PROGRAM in main().
Add some comments about "don't use GET_IP6ADDR_STRING()".
Assign ndo->ndo_packetp in pretty_print_packet().
Add ND_LCHECKMSG_U, ND_LCHECK_U, ND_LCHECKMSG_ZU and ND_LCHECK_ZU macros.
Update tok2strbuf() to a static function.
netdissect.h: Keep the link-layer dissectors names sorted.
setsignal(): Set SA_RESTART on non-lethal signals (REQ_INFO, FLUSH_PCAP)
to avoid corrupting binary pcap output.
Use __builtin_unreachable().
Fail if nd_push_buffer() or nd_push_snaplen() fails.
Improve code style and fix many typos.
Documentation:
Some man page cleanups.
Update the print interface for the packet count to stdout.
Note that we require compilers to support at least some of C99.
Update AIX and Solaris-related specifics.
INSTALL.txt: Add doc/README.*, delete the deleted win32 directory.
Update README.md and README.Win32.md.
Update some comments with new RFC numbers.
|
Log message:
tcpdump: updated to 4.99.1
Summary for 4.99.1 tcpdump release:
Source code:
Squelch some compiler warnings
ICMP: Update the snapend for some nested IP packets.
MACsec: Update the snapend thus the ICV field is not payload
for the caller.
EIGRP: Fix packet header fields
SMB: Disable printer by default in CMake builds
OLSR: Print the protocol name even if the packet is invalid
MSDP: Print ": " before the protocol name
ESP: Remove padding, padding length and next header from the buffer
DHCPv6: Update the snapend for nested DHCPv6 packets
OpenFlow 1.0: Get snapend right for nested frames.
TCP: Update the snapend before decoding a MPTCP option
Ethernet, IEEE 802.15.4, IP, L2TP, TCP, ZEP: Add bounds checks
ForCES: Refine SPARSEDATA-TLV length check.
ASCII/hex: Use nd_trunc_longjmp() in truncation cases
GeoNet: Add a ND_TCHECK_LEN() call
Replace ND_TCHECK_/memcpy() pairs with GET_CPY_BYTES().
BGP: Fix overwrites of global 'astostr' temporary buffer
ARP: fix overwrites of static buffer in q922_string().
Frame Relay: have q922_string() handle errors better.
Building and testing:
Rebuild configure script when building release
Fix "make clean" for out-of-tree autotools builds
CMake: add stuff from CMAKE_PREFIX_PATH to PKG_CONFIG_PATH.
Documentation:
man: Update a reference as www.cifs.org is gone. [skip ci]
man: Update DNS sections
Solaris:
Fix a compile error with Sun C
Summary for 4.99.0 tcpdump release
Improve the contents, wording and formatting of the man page.
Print unsupported link-layer protocol packets in hex.
Add support for new network protocols and DLTs: Arista, Autosar SOME/IP,
Broadcom LI and Ethernet switches tag, IEEE 802.15.9, IP-over-InfiniBand
(IPoIB), Linux SLL2, Linux vsockmon, MACsec, Marvell Distributed Switch
Architecture, OpenFlow 1.3, Precision Time Protocol (PTP), SSH, WHOIS,
ZigBee Encapsulation Protocol (ZEP).
Make protocol-specific updates for: AH, DHCP, DNS, ESP, FRF.16, HNCP,
ICMP6, IEEE 802.15.4, IPv6, IS-IS, Linux SLL, LLDP, LSP ping, MPTCP, NFS,
NSH, NTP, OSPF, OSPF6, PGM, PIM, PPTP, RADIUS, RSVP, Rx, SMB, UDLD,
VXLAN-GPE.
User interface:
Make SLL2 the default for Linux "any" pseudo-device.
Add --micro and --nano shorthands.
Add --count to print a counter only instead of decoding.
Add --print, to cause packet printing even with -w.
Add support for remote capture if libpcap supports it.
Display the "wireless" flag and connection status.
Flush the output packet buffer on a SIGUSR2.
Add the snapshot length to the "reading from file ..." message.
Fix local time printing (DST offset in timestamps).
Allow -C arguments > 2^31-1 GB if they can fit into a long.
Handle very large -f files by rejecting them.
Report periodic stats only when safe to do so.
Print the number of packets captured only as often as necessary.
With no -s, or with -s 0, don't specify the snapshot length with newer
versions of libpcap.
Improve version and usage message printing.
Building and testing:
Install into bindir, not sbindir.
autoconf: replace --with-system-libpcap with --disable-local-libpcap.
Require the compiler to support C99.
Better detect and use various C compilers and their features.
Add CMake as the second build system.
Make out-of-tree builds more reliable.
Use pkg-config to detect libpcap if available.
Improve Windows support.
Add more tests and improve the scripts that run them.
Test both with "normal" and "x87" floating-point.
Eliminate dependency on libdnet.
FreeBSD:
Print a proper error message about monitor mode VAP.
Use libcasper if available.
Fix failure to capture on RDMA device.
Include the correct capsicum header.
Source code:
Start the transition to longjmp() for packet truncation handling.
Introduce new helper functions, including GET_*(), nd_print_protocol(),
nd_print_invalid(), nd_print_trunc(), nd_trunc_longjmp() and others.
Put integer signedness right in many cases.
Introduce nd_uint*, nd_mac_addr, nd_ipv4 and nd_ipv6 types to fix
alignment issues, especially on SPARC.
Fix many C compiler, Coverity, UBSan and cppcheck warnings.
Fix issues detected with AddressSanitizer.
Remove many workarounds for older compilers and OSes.
Add a sanity check on packet header length.
Add and remove plenty of bounds checks.
Clean up pcap_findalldevs() call to find the first interface.
Use a short timeout, rather than immediate mode, for text output.
Handle DLT_ENC files *not* written on the same OS and byte-order host.
Add, and use, macros to do locale-independent case mapping.
Use a table instead of getprotobynumber().
Get rid of ND_UNALIGNED and ND_TCHECK().
Make roundup2() generally available.
Resync SMI list against Wireshark.
Fix many typos.
|