./net/tcpdump, Network monitoring tool

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 4.99.5, Package name: tcpdump-4.99.5, Maintainer: pkgsrc-users

A tool for network monitoring and data acquisition. This software was
originally developed by the Network Research Group at the Lawrence
Berkeley National Laboratory. The original distribution is available
via anonymous ftp to ftp.ee.lbl.gov, in tcpdump.tar.Z. More recent
development is performed at tcpdump.org, http://www.tcpdump.org/


Required to run:
[net/libpcap] [security/openssl]

Required to build:
[pkgtools/cwrappers]

Package options: ssl

Master sites:

Filesize: 1997.154 KB

Version history: (Expand)


CVS history: (Expand)


   2024-09-01 11:49:12 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
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.
   2023-10-25 00:11:51 by Thomas Klausner | Files touched by this commit (2298)
Log message:
*: bump for openssl 3
   2023-04-18 09:59:47 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
tcpdump: updated to 4.99.4

Summary for 4.99.4 tcpdump release
  Source code:
    Fix spaces before tabs in indentation.
  Updated printers:
    LSP ping: Fix "Unused value" warnings from Coverity.
    CVE-2023-1801: Fix an out-of-bounds write in the SMB printer.
    DNS: sync resource types with IANA.
    ICMPv6: Update the output to show a RPL DAO field name.
    Geneve: Fix the Geneve UDP port test.
  Building and testing:
    Require at least autoconf 2.69.
    Don't check for strftime(), as it's in C90 and beyond.
    Update config.{guess,sub}, timestamps 2023-01-01,2023-01-21.
  Documentation:
    man: Document TCP flag names better.
   2023-01-16 09:27:42 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
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.
   2021-11-16 17:20:18 by Adam Ciarcinski | Files touched by this commit (1)
Log message:
tcpdump: add patch-Makefile.in
   2021-11-16 17:19:40 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
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.
   2021-10-26 13:07:15 by Nia Alarie | Files touched by this commit (958)
Log message:
net: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Not committed (merge conflicts...):

net/radsecproxy/distinfo

The following distfiles could not be fetched (fetched conditionally?):

./net/citrix_ica/distinfo citrix_ica-10.6.115659/en.linuxx86.tar.gz
./net/djbdns/distinfo dnscache-1.05-multiple-ip.patch
./net/djbdns/distinfo djbdns-1.05-test28.diff.xz
./net/djbdns/distinfo djbdns-1.05-ignoreip2.patch
./net/djbdns/distinfo djbdns-1.05-multiip.diff
./net/djbdns/distinfo djbdns-cachestats.patch
   2021-10-07 16:43:07 by Nia Alarie | Files touched by this commit (962)
Log message:
net: Remove SHA1 hashes for distfiles