Download Latest Version May 2025 Release source code.tar.gz (14.5 MB)
Email in envelope

Get an email when there's a new version of PcapPlusPlus

Home / v25.05
Name Modified Size InfoDownloads / Week
Parent folder
pcapplusplus-25.05-freebsd-13.4-clang-18.1.6-amd64.tar.gz 2025-05-15 10.5 MB
pcapplusplus-25.05-windows-vs2019-x64-release.zip 2025-05-15 7.5 MB
pcapplusplus-25.05-windows-vs2022-x64-release.zip 2025-05-15 7.8 MB
pcapplusplus-25.05-windows-vs2019-win32-release.zip 2025-05-15 6.6 MB
pcapplusplus-25.05-windows-mingw64-x86_64-gcc-15.1.0.zip 2025-05-15 23.3 MB
pcapplusplus-25.05-freebsd-14.1-clang-18.1.5-amd64.tar.gz 2025-05-15 10.5 MB
pcapplusplus-25.05-windows-mingw64-i386-gcc-15.1.0.zip 2025-05-15 23.4 MB
pcapplusplus-25.05-windows-vs2022-win32-debug.zip 2025-05-15 22.7 MB
pcapplusplus-25.05-windows-vs2022-win32-release.zip 2025-05-15 6.9 MB
pcapplusplus-25.05-ubuntu-24.04-gcc-13.3.0-aarch64.tar.gz 2025-05-15 11.1 MB
pcapplusplus-25.05-ubuntu-20.04-gcc-9.4.0-x86_64.tar.gz 2025-05-15 11.6 MB
pcapplusplus-25.05-android.tar.gz 2025-05-15 143.9 MB
pcapplusplus-25.05-windows-vs2022-x64-debug.zip 2025-05-15 25.7 MB
pcapplusplus-25.05-windows-vs2019-win32-debug.zip 2025-05-15 21.0 MB
pcapplusplus-25.05-windows-vs2019-x64-debug.zip 2025-05-15 23.7 MB
pcapplusplus-25.05-alpine-3.20.3-gcc-13.2.1-x86_64.tar.gz 2025-05-15 12.5 MB
pcapplusplus-25.05-ubuntu-22.04-intel-2024.2.0-x86_64.tar.gz 2025-05-15 10.8 MB
pcapplusplus-25.05-fedora-42-gcc-15.0.1-x86_64.tar.gz 2025-05-15 11.7 MB
pcapplusplus-25.05-ubuntu-24.04-gcc-13.3.0-x86_64.tar.gz 2025-05-15 12.2 MB
pcapplusplus-25.05-ubuntu-22.04-gcc-11.4.0-x86_64.tar.gz 2025-05-15 11.6 MB
pcapplusplus-25.05-rhel-9.4-gcc-11.4.1-x86_64.tar.gz 2025-05-15 11.1 MB
pcapplusplus-25.05-macos-arm64-xcode-15.0.0.tar.gz 2025-05-15 9.7 MB
pcapplusplus-25.05-macos-arm64-xcode-16.0.0.tar.gz 2025-05-15 9.7 MB
pcapplusplus-25.05-macos-x86_64-xcode-16.0.0.tar.gz 2025-05-15 9.6 MB
pcapplusplus-25.05-macos-x86_64-xcode-15.0.0.tar.gz 2025-05-15 9.8 MB
May 2025 Release source code.tar.gz 2025-05-15 14.5 MB
May 2025 Release source code.zip 2025-05-15 15.1 MB
README.md 2025-05-15 5.0 kB
Totals: 28 Items   494.4 MB 1

May 2025 release of PcapPlusPlus (v25.05)

Binaries included in this release

  • Binaries compiled for Ubuntu 24.04 LTS, 22.04 LTS, 20.04 LTS
  • For Ubuntu 24.04 both x86_64 and ARM packages are available
  • Binaries compiled for RHEL 9.4
  • Binaries compiled for Fedora 42
  • Binaries compiled for Alpine 3.20.3
  • Binaries compiled for macOS Intel and Apple Silicon with Xcode 15 and 16
  • Binaries compiled for Android with all 4 ABIs: arm64-v8a, armeabi-v7a, x86, x86_64
  • Binaries compiled for FreeBSD 14.1 and 13.4
  • Binaries compiled for Windows using MinGW-w64 15.1.0 (32bit + 64bit)
  • Binaries compiled for Windows using Microsoft Visual Studio 2022, 2019 (32bit + 64bit, Debug + Release configurations)
  • Full documentation (both PcapPlusPlus website and API doxygen documentation) is available here: https://pcapplusplus.github.io/docs/quickstart

What's changed (changes from v24.09)

  • New protocol support:
  • WireGuard (thanks @nadongjun !)
  • Add gratuitous ARP requests (thanks @Dimi1010 !)
  • GTPv2
  • Cisco HDLC
  • Added the option to build only Common++ and Packet++ libraries without Pcap++, removing the dependency on third-party libraries like libpcap or WinPcap/Npcap (thanks @Dimi1010 !)
  • Updated the CMake files to support using pcapplusplus/ as the include prefix (thanks @clementperon !)
  • Added support for DPDK 23.11 and 24.11
  • Introduced nanosecond precision for timestamps in TCP reassembly
  • Added support for timestamp-related libpcap options (thanks @vcomito-apexai !)
  • Added multi-language README support (Traditional Chinese, Korean) (thanks @tigercosmos, @nadongjun !)
  • Updated OS/platform support running in CI: Ubuntu ARM64, Alpine 3.20, Fedora 42, FreeBSD 13.4/14.1, newer macOS runners (thanks @clementperon !)
  • Migrated Android build to use the new version of ToyVPN
  • Introduced a new benchmark system using Google Benchmark (thanks @egecetin !)
  • Enhanced Python testing and linting infrastructure with ruff (thanks @tigercosmos !)
  • Code refactoring:
  • Overhauled the logging infrastructure for better performance and flexibility (thanks @Dimi1010 !)
  • Reformatted CMakeLists files using gersemi (thanks @egecetin !)
  • Updated the internal implementation of PcapLiveDevice to store IP information as IPAddress (thanks @Dimi1010!)
  • Streamlined packet parsing using templated next-layer sub-construction (thanks @Dimi1010 !)
  • Refactored device list classes (PcapLiveDeviceList, DpdkDeviceList, etc.) to use smart pointers internally for memory management and consolidated common behavior under a base class (thanks @Dimi1010 !)
  • Improved the internal implementation of MacAddress, IPAddress and IPNetwork classes (thanks @Dimi1010 !)
  • Enhanced and modernized the internal implementation of PfRingDevice (thanks @Dimi1010 !)
  • Removed usage of VLAs (Variable Length Arrays) for C++ standard compliance (thanks @Dimi1010 !)
  • Numerous C++11 modernization efforts (thanks @Dimi1010, @egecetin, @lumiZGorlic, @kiwixz, @ol-imorozko !)
  • Improved documentation using triple-slash Doxygen formatting (thanks @Dimi1010, @tigercosmos !)
  • Tons of bug fixes, security fixes and small improvements (thanks @Dimi1010, @clementperon, @rndx21033, @prudens, @Doekin, @egecetin, @ol-imorozko, @1ndahous3, @fxlb, @jj683, @oss-patch, @enomis101, @Shivam7-1, @orgads, @Alexis-Lapierre, @s-genereux, @fasonju !)

Breaking changes

  • Logger::LogLevel has been deprecated and moved to LogLevel. LogLevel is now an enum class, so arithmetic operations on it will fail to compile
  • The Logger copy constructor and copy assignment operator are marked as deleted
  • The return type of Packet::getRawPacketReadOnly() has been changed from RawPacket* to RawPacket const*
  • SSLv2 support has been removed (it was non-functional in previous versions) (thanks to @droe!)

Deprecation list

  • PcapLiveDevice::getAddresses(), which was previously deprecated, has now been removed
  • libpcap versions < 0.9 are no longer supported. As a result, the following CMake options have been removed: PCAPPP_ENABLE_PCAP_IMMEDIATE_MODE and PCAPPP_ENABLE_PCAP_SET_DIRECTION
  • The following methods are now deprecated and will be removed in future versions:
  • Logger::Error, Logger::Info, and Logger::Debug are deprecated. Please use LogLevel::XXX instead
  • PcapLiveDeviceList::getPcapLiveDeviceBy*** methods have been deprecated in favor of PcapLiveDeviceList::getDeviceBy***
  • ArpLayer(ArpOpcode opCode, const MacAddress &senderMacAddr, const MacAddress &targetMacAddr, const IPv4Address &senderIpAddr, const IPv4Address &targetIpAddr) constructor has been deprecated in favor of more explicit overloads

Collaborators

  • @tigercosmos
  • @Dimi1010
  • @egecetin
  • @clementperon
  • @seladb

Full Changelog: https://github.com/seladb/PcapPlusPlus/compare/v24.09...v25.05

Source: README.md, updated 2025-05-15