All Versions
8
Latest Version
Avg Release Cycle
238 days
Latest Release
189 days ago

Changelog History

  • v20.08

    August 25, 2020

    ๐Ÿš€ August 2020 release of PcapPlusPlus (v20.08)

    ๐Ÿ“ฆ This package contains

    • Binaries compiled with Ubuntu 20.04 LTS, 18.04 LTS,16.04 LTS
    • Binaries compiled with CentOS 7
    • Binaries compiled with Fedora 29
    • ๐ŸŽ Binaries compiled with MacOS 10.15 (Catalina) , 10.14 (Mojave), 10.13 (High Sierra), 10.12 (Sierra), and 10.11 (El Capitan) using Xcode ranging from 8.0 to 12.0
    • Binaries compiled with FreeBSD 11.3 and 12.1
    • ๐Ÿ Binaries compiled with Windows using MinGW32 9.2.0 (32bit) and MinGW-w64 8.1.0 (32bit)
    • ๐Ÿš€ Binaries compiled with Windows using Microsoft Visual Studio 2019, 2017, 2015 (32bit + 64bit, Debug + Release configurations)
    • ๐Ÿง Source code + Linux installation scripts for DPDK, PF_RING and vanilla
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://pcapplusplus.github.io/v2008/

    ๐Ÿš€ Release notes (changes from v19.12)

    • ๐Ÿ”’ Major security and quality improvements:
      • PcapPlusPlus was added to Google OSS-Fuzz which uses the Fuzz testing technique to discover security vulnerabilities and stability bugs (thank you @zlowram !)
      • Created a new regression test suite for OSS-Fuzz bugfixes under Tests/Fuzzers/RegressionTests (thank you @zlowram !)
      • Added LGTM integration to enable continuous code analysis and prevent critical vulnerabilities (thank you @alexey-tereshenkov-oxb !)
      • More than 60 issues were found by OSS-Fuzz and LGTM and fixed in this release
      • Revamped Packet++Test and Pcap++Test: tests are now more structured, divided into multiple files and use common and more intuitive test infrastructure
      • Added a new test suite (written in Python) for PcapPlusPlus examples under Tests/ExamplesTests
    • โž• Added Npcap support for Windows (in parallel to WinPcap support)
    • โž• Added DPDK 19.11 (LTS) support
    • ๐Ÿ†• New supported protocols:
      • BGP v4
      • IEEE 802.3 Ethernet
    • ๐Ÿ†• New platforms officially supported:
      • MacOS Catalina (10.15)
      • Ubuntu 20.04
    • A complete rewrite of the IP address classes IPv4Address, IPv6Address and IPAddress to make them more efficient and east to use (thank you @gx740 !)
    • In addition, new features were added to IP address classes:
      • Added "less than" comparison operator (thank you @maruu !)
      • Added subnet match for IPv6Address (thank you @DinoStray !)
    • ๐ŸŽ Performance optimization, readability improvements and code cleanup in various parts of the code (thank you @maruu and @gx740 !)
    • โ†” Integrated streaming ZStd compression for pcapng files (thank you @Dysl3xik !)
    • Pcap/pcapng files:
      • Read and write in nanoseconds precision for pcapng files (thank you @Akvinikym !)
      • Enable flush for pcap and pcapng file writers (thank you @rickyzhang82 and @l-henken !)
    • TCP reassembly returns status in every call to TcpReassembly::reassemblePacket() (thank you @starliiit !)
    • โž• Added port filter to HttpAnalyzer (thank you @makefriend8 !)
    • ๐Ÿ‘Œ Support for setting snapshot length in PcapLiveDevice (thank you @wongsingfo !)
    • GeneralFilter::matchPacketWithFilter() can now match packet of any link type (thank you @skorup101 !)
    • โž• Added user link types 147-162 to support custom protocols (thank you @l-henken !)
    • ๐Ÿ›  Tons of bug fixes (thank you everyone who reported issues and contributed bugfixes!)

    Contributors

    ๐Ÿš€ Thank you for everyone who contributed to this release:

  • v19.12

    December 04, 2019

    ๐Ÿš€ December 2019 release of PcapPlusPlus (v19.12)

    ๐Ÿ“ฆ This package contains

    • Binaries compiled with Ubuntu 18.04 LTS, 16.04 LTS,14.04 LTS
    • Binaries compiled with CentOS 7
    • Binaries compiled with Fedora 29
    • ๐ŸŽ Binaries compiled with MacOS 10.11 (El Capitan), 10.12 (Sierra), 10.13 (High Sierra) and 10.14 (Mojave) using Xcode ranging from 7.3 to 11.2
    • Binaries compiled with FreeBSD 11.2 and 12.0
    • ๐Ÿ Binaries compiled with Windows using MinGW32 5.3.0 (32bit) and MinGW-w64 6.3.0 (32bit)
    • ๐Ÿš€ Binaries compiled with Windows using Microsoft Visual Studio 2015, 2017, 2019 (32bit + 64bit, Debug + Release configurations)
    • Source code
    • ๐Ÿง Source code + Linux installation scripts for DPDK, PF_RING and vanilla
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://pcapplusplus.github.io/v1912/

    ๐Ÿš€ Release notes (changes from v19.04)

    • โž• Added support for Visual Studio 2017 and 2019
    • โž• Added support for DPDK 19.08 (thanks @gx740 !)
    • Major improvements in TCP reassembly (thanks @gx740 !):
      • Reducing memory consumption by cleaning up old connections
      • A lot of performance and code optimizations
    • โž• Added out-of-the-box support for MacOS 10.14 Mojave and later
    • โž• Added support for FreeBSD (thanks @rickyzhang82 !)
    • โž• Added support for GTP v1 protocol
    • โž• Added DPDK KNI support (thanks @echo-Mike !)
    • โž• Added KniPong example to demo the new KNI API (thanks @echo-Mike !)
    • ๐ŸŽ Lots of performance optimizations and code cleanups (special thanks to @gx740 !)
    • ๐Ÿ‘ Major revamp of reading/writing pcapng files - use streaming instead of memory copies and added support for compression (thanks @Dysl3xik !)
    • ๐Ÿง Added support for pcap_setdirection in PcapLiveDevice (thanks @MrSiz !)
    • ๐ŸŽ Performance optimization and fixes in IPReassembly (thanks @gx740, @silviucpp !)
    • โž• Added a new BPFStringFilter pcap filter to handle raw BPF filter strings and deprecated the old IPcapDevice::matchPacketWithFilter() API (thanks @Dysl3xik !)
    • Let the user add custom LDFLAGS to the main Makefile (thanks @rom1sqr !)
    • โž• Added data validations in IPv4Layer before parsing the next layers (thanks @gx740 !)
    • โœ… Created a new unit-test framework to make it easier to write unit-tests
    • Replaced old 3rd-party debug-new with new homegrown MemPlumber
    • ๐Ÿ›  Tons of bug fixes (special thanks to @gx740 , @echo-Mike , @Dysl3xik !)

    Contributors

    ๐Ÿš€ Thank you for everyone who contributed to this release:

  • v19.04

    April 02, 2019

    ๐Ÿš€ April 2019 release of PcapPlusPlus (v19.04)

    ๐Ÿ“ฆ This package contains:

    • Binaries compiled with Ubuntu 18.04 LTS, 16.04 LTS,14.04 LTS
    • Binaries compiled with CentOS 7
    • Binaries compiled with Fedora 29
    • ๐ŸŽ Binaries compiled with MacOS 10.10 (Yosemite), 10.11 (El Capitan), 10.12 (Sierra) and 10.13 (High Sierra) using Xcode ranging from 7.3 to 10.1
    • ๐Ÿ Binaries compiled with Windows using MinGW32 5.3.0 (32bit) and MinGW-w64 6.3.0 (32bit)
    • ๐Ÿš€ Binaries compiled with Windows using Microsoft Visual Studio 2015 (32bit and 64bit, Debug and Release configurations)
    • Source code
    • ๐Ÿง Source code + Linux installation scripts for DPDK, PF_RING and vanilla
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://pcapplusplus.github.io/v1904/

    ๐Ÿš€ Release notes (changes from v18.08):

    • ๐Ÿ‘ DPDK support enhancements:
      • Added support for the newest DPDK releases: 18.05, 18.08, 18.11, 19.02
      • Added a new DpdkBridge example which is a PcapPlusPlus implementation for DPDK's L2 forwarding example - Thanks @vicenterb !
      • Added a new tutorial for using PcapPlusPlus with DPDK which walks through building a simple version of DpdkBridge
    • ๐Ÿ“œ Packet parsing and crafting enhancements:
      • Added RADIUS layer
      • Revamped DNS record API and added support for DNS MX records
      • Revamped remove layer from packet - removing a layer is more intuitive now + added an option to detach a layer from a packet
      • Revamped TLV data handling - simplified the way IPv4 options, TCP options, DHCP options, RADIUS attributes and IPv6 extensions with options are handled. API is now more intuitive and shares a common infrastructure
      • Fixed bugs in fetching VLAN properties in VlanLayer - thanks @Lapshin !
    • โž• Added support for raw sockets on Linux and Windows (RawSocketDevice)
    • โž• Added support for link-types other than Ethernet in PcapLiveDevice - thanks @axasoft !
    • ๐Ÿ”ฆ Exposed start and end times in TCP reassembly - thanks @Lnk2past !
    • PcapSplitter:
      • Added pcapng support
      • When splitting by connection, multiple flows with the same 5-tuple are now separated to different files
    • โž• Added filtering capabilities to PcapNgFileWriterDevice - thanks @vrobles-gee !
    • โž• Added more accurate time measurement for packet capture in blocking mode
    • โž• Added DeviceConfiguration to PcapLiveDevice to provide an interface to set WinPcap/libpcap packet buffer size and buffer timeout
    • โ™ป๏ธ Refactored the devices class hierarchy (the new root class is now IDevice)
    • ๐Ÿ‘ท Build system improvements to provide better support for package managers - thanks @solvingj !
    • ๐Ÿ›  Lots of bugfixes
  • v18.08

    August 07, 2018

    ๐Ÿš€ August 2018 release of PcapPlusPlus (v18.08)

    โœ… Master branch is always kept stable, so the latest code can always be considered as the newest stable version.

    ๐Ÿ“ฆ This package contains:

    • Binaries compiled with Ubuntu 16.04 LTS and Ubuntu14.04 LTS
    • Binaries compiled with CentOS 7
    • Binaries compiled with Fedora 26
    • ๐ŸŽ Binaries compiled with MacOS 10.10 (Yosemite), 10.11 (El Capitan), 10.12 (Sierra) and 10.13 (High Sierra) using Xcode ranging from 6.4 to 9.4
    • ๐Ÿ Binaries compiled with Windows using MinGW32 5.3.0 (32bit) and MinGW-w64 6.3.0 (32bit)
    • ๐Ÿš€ Binaries compiled with Windows using Microsoft Visual Studio 2015 (32bit and 64bit, Debug and Release configurations)
    • Source code
    • ๐Ÿง Source code + Linux installation scripts for DPDK, PF_RING and vanilla
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://pcapplusplus.github.io/v1808/

    ๐Ÿš€ Release notes (changes from v17.11):

    • Massive DPDK enhancements:
      • Major performance improvements
      • Fixed some mbuf leakages
      • DPDK 17.11 and 18.02 support (thanks @luigino !)
      • Re-designed some of DpdkDevice APIs to make them cleaner, faster and easier to use
      • Expose DPDK-specific stats
      • RSS (Receive Side Scaling) support
      • DPDK TX buffers support
      • Enable DPDK master core configuration
    • โž• Added IP reassembly module (a.k.a IP de-fragmenetation). Supports both IPv4 and IPv6
    • โž• Added IPv6 support for TCP reassembly
    • ๐ŸŽ Install to custom directory on Linux and MacOS
    • ๐ŸŽ Performance improvement in packet parsing
    • ๐Ÿ›  Fixed compatibility issues with C++17 (thanks @echo-Mike !)
    • Read multiple packets from pcap/pcapng files
    • ๐Ÿ‘ท Build system improvements (thanks @echo-Mike !)
    • ๐Ÿ†• New protocols:
      • Packet trailer (a.k.a footer or padding)
      • IPv6 extensions
    • ๐Ÿ†• New and updated utilities:
      • New IPFragUtil for splitting packets into IP fragments
      • New IPDefragUtil for reassembling IP fragments into packets
      • PcapSplitter now supports round-robin splitting
    • ๐Ÿ›  Many bugfixes
  • v17.11

    November 05, 2017

    ๐Ÿš€ November 2017 release of PcapPlusPlus (v17.11)

    โœ… Master branch is always kept stable, so the latest code can always be considered as the newest stable version.

    ๐Ÿ“ฆ This package contains:

    • Binaries compiled with Ubuntu 16.04 LTS and Ubuntu14.04 LTS
    • Binaries compiled with CentOS 7
    • Binaries compiled with Fedora 26
    • ๐ŸŽ Binaries compiled with MacOS 10.10 (Yosemite), 10.11 (El Capitan) and 10.12 (Sierra) using Xcode ranging from 6.4 to 9
    • ๐Ÿ Binaries compiled with Windows using MinGW32 5.3.0 (32bit) and MinGW-w64 6.3.0 (32bit)
    • ๐Ÿš€ Binaries compiled with Windows using Microsoft Visual Studio 2015 (32bit and 64bit, Debug and Release configurations)
    • Source code
    • ๐Ÿง Source code + Linux installation scripts for DPDK, PF_RING and vanilla
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://github.com/seladb/PcapPlusPlus-Doc/releases/tag/v17.11

    ๐Ÿš€ Release notes (changes from v17.02)

    • โž• Added TCP reassembly module
    • Set Unilicense as PcapPlusPlus license
    • โž• Added support for DPDK 16.11 and 17.02 (replacing old 2.1 version)
    • โž• Added 5 tutorials for getting started with PcapPlusPlus: http://seladb.github.io/PcapPlusPlus-Doc/tutorials.html
    • โž• Added installation target ('make install') on Linux and MacOS
    • ๐Ÿ†• New protocols:
      • SIP
      • SDP
      • IPv4 options
      • Raw IP link layer type
      • VXLAN
    • ๐Ÿ†• New and updated utilities:
      • New TCP reassembly utility
      • PcapSplitter now includes split criteria in split file names (for example: when splitting by client IP output files will look like: filename-client-ip-x.x.x.x.pcap). This applies also to splitting by server IP, server port and BPF filter (thanks to @bpagon13 !)
      • PcapSplitter now supports splitting pcap files with link type other than Ethernet
      • Added version information for all utilities
    • ๐Ÿ“œ Choose whether to parse a packet fully or up to a certain layer
    • โž• Added support for libpcap immediate mode where supported (libpcap ver>=1.5) - thanks to @f-squirrel !
    • โฌ†๏ธ pthreads on MinGW are now linked statically (upgraded pthreads to 2.10)
    • โž• Added PcapPlusPlus version and Git info API
    • Clean-ups:
      • Removed unnecessary files and reduced repo size
      • Removed compilation warnings
      • Cleaner makefiles and makefile output
      • Moved debug-new to 3rd-party
    • ๐Ÿ›  Many bugfixes
  • v17.02

    February 19, 2017

    ๐Ÿš€ February 2017 release of PcapPlusPlus

    โœ… Master branch is always kept stable, so the latest code can always be considered as the newest stable version.

    ๐Ÿ“ฆ This package contains:

    • Source code
    • Binaries compiled with Ubuntu 16.04 LTS (64bit),14.04 LTS (64bit), 12.04 LTS (64bit) (without DPDK and PF_RING)
    • Binaries compiled with Ubuntu 14.04 LTS (64bit) and DPDK 2.1.0
    • Binaries compiled with Ubuntu 14.04 LTS (64bit) and PF_RING 6.4.1
    • ๐Ÿ Binaries compiled with Windows using MinGW32 5.3.0 (32bit) and MinGW-w64 6.3.0 (32bit)
    • ๐Ÿš€ Binaries compiled with Windows using Microsoft Visual Studio 2015 (32bit and 64bit, Debug and Release configurations)
    • Binaries compiled with Mac OSX 10.10 (Yosemite), 10.11 (El Capitan) and 10.12 (Sierra) using Xcode ranging from 6.4 to 8.2
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://github.com/seladb/PcapPlusPlus-Doc/releases/tag/v17.02

    ๐Ÿ“ฆ In order to compile your application with the attached binary packages you need to:

    ๐Ÿš€ Release notes (changes from v16.09):

    • ๐Ÿš€ Microsoft Visual Studio 2015 support - x86 (32bit) & x64 (64bit) + Debug & Release configurations
    • ๐Ÿ”ง MinGW-w64 support (32bit configuration only)
    • ๐Ÿ‘ Native PcapNG format support (reading and writing files)
    • ๐Ÿ†• New protocols:
      • DHCP
      • Null/Loopback
      • IGMP
    • ๐Ÿ†• New and updated utilities:
      • Added ICMP file transfer utility
      • PcapSplitter
      • Added the option to split only packets matching to a certain BPF filter
      • Support splitting of large files (more than 2GB)
      • PcapPrinter:
      • Added support for printing PcapNG files
      • Added printing of packet comments (supported only in PcapNG files)
      • Added printing of file info
      • PcapSearch:
      • Added searching inside PcapNG files
      • HttpAnalyzer:
      • Added analyzing of HTTP packets inside PcapNG files
      • SSLAnalyzer:
      • Added analyzing of SSL/TLS packets inside PcapNG files
    • โž• Added blocking mode capturing in PcapLiveDevice
    • Match packets with BPF filter without device instance
    • ๐Ÿ— Simplified build process (removed dependency in platform.mk)
    • โž• Added clear filter capability to all devices
    • ๐Ÿ›  Many bugfixes
  • v16.09

    September 12, 2016

    ๐Ÿš€ September 2016 release of PcapPlusPlus

    โœ… Master branch is always kept stable, so the latest code can always be considered as the newest stable version.

    ๐Ÿ“ฆ This package contains:

    • Source code
    • Binaries compiled with Ubuntu 14.04 LTS (64bit), 12.04 LTS (64bit+32bit) (without DPDK and PF_RING)
    • Binaries compiled with Ubuntu 14.04 LTS (64bit) and DPDK 2.1.0
    • Binaries compiled with Ubuntu 14.04 LTS (64bit) and PF_RING 6.4.1
    • ๐Ÿ Binaries compiled with Windows using Mingw32
    • Binaries compiled with Mac OSX 10.9 (Mavericks), 10.10 (Yosemite) and 10.11 (El Capitan) using Xcode ranging from 6.1 to 8.0
    • ๐Ÿ“š Full documentation (both PcapPlusPlus web-site and API doxygen documentation) is available here: https://github.com/seladb/PcapPlusPlus-Doc/releases/tag/v16.09

    ๐Ÿ“ฆ In order to compile your application with the attached binary packages you need to:

    ๐Ÿš€ Release notes (changes from v16.02):

    • ๐Ÿ†• New protocols:
      • SSL/TLS (parsing only)
      • SLL (Linux cooked capture)
    • ๐Ÿ†• New utilities:
      • PcapSplitter - splits a pcap file into smaller ones by various criteria
      • PcapSearch - search inside pcap files and match packets by user-defined pattern
      • PcapPrinter - outputs packets from a pcap file as a readable string
      • SSL Analyzer - analyzes SSL/TLS traffic and presents detailed information about it
      • PcapPlusPlus performance benchmark application
    • โž• Added namespace to avoid pollution of the global namespace
    • โž• Added capability to open pcap files in append mode
    • ๐Ÿ›  Fixed compilation issues with DPDK on Ubuntu 14.04 and gcc 4.8.x
    • Faster compilation process
    • โž• Added command-line switches to configure-linux.sh and configure-windows.bat
    • โž• Added continuous integration for all platforms (Win32, Linux and Mac OS X)
    • ๐Ÿ“œ IPv4 fragmentation detection and parsing
    • ๐Ÿ†• New and improved TCP/UDP flow key generation methods
    • VlanLayer - added CFI and priority getters + setters
    • โ™ป๏ธ Refactor TCP options
    • ๐Ÿ›  Many bugfixes
  • v16.02

    February 03, 2016

    ๐Ÿš€ February 2016 release of PcapPlusPlus

    โœ… Master branch is always kept stable, so the latest code can always be considered as the newest stable version.
    ๐Ÿš€ But I'll be using releases to publish compiled binaries once in a while

    ๐Ÿ“ฆ This package contains:

    • Binaries compiled with Ubuntu 14.10 32-bit (compiled without DPDK and PF_RING)
    • ๐Ÿ Binaries compiled with Windows 7 32-bit
    • Binaries compiled with Mac OS X Snow Leopard 10.6.2 32-bit

    In order to compile your application with these binaries you need to:

    • โšก๏ธ Update mk/PcapPlusPlus.mk file:
      1. Set "PCAPPLUSPLUS_HOME" to the folder where binaries are located
      2. For Windows only: set "MINGW_HOME" to the folder where MinGW is installed
      3. For Windows only: set "WINPCAP_HOME" to the folder where WinPcap Developer's Pack is installed
    • Follow "Creating Applications With PcapPlusPlus" section in https://github.com/seladb/PcapPlusPlus