[PATCH v7 0/7] pcapng: fixes and improvements

Stephen Hemminger
2026-02-13T19:20:46Z

This series addresses several issues in the pcapng library, improves
test coverage, and updates dumpcap error handling.

Patches 1-3 fix string handling in the pcapng administrative APIs.
The pcapng format uses 16-bit length fields for option data, but the
library did not validate input lengths and used fixed-size stack
buffers that could overflow with large strings.

Patch 4 optimizes timestamp conversion by replacing per-packet
divisions with precomputed reciprocal multiply-shift operations.

Patch 5 improves pcapng unit test coverage with varied comment
strings, randomized packet sizes, and 32-bit TSC wraparound
verification.

Patch 6 fixes the test build dependency so the pcapng test is
skipped when the null PMD is disabled.

Patch 7 improves error reporting in dumpcap for pcapng API failures.

v7:
- Add meson build fix for disabled null PMD
- Add dumpcap error reporting improvements
- Update timestamp commit message to describe current implementation

Stephen Hemminger (7):
pcapng: add length checks to string arguments
pcapng: use malloc instead of fixed buffer size
pcapng: chain additional mbuf when comment exceeds tailroom
pcapng: improve performance of timestamping
test/pcapng: add tests for comments
test/pcapng: skip test if null driver missing
dumpcap: improve pcapng error reporting

app/dumpcap/main.c | 36 +++--
app/test/meson.build | 2 +-
app/test/test_pcapng.c | 151 ++++++++++++++-----
doc/guides/rel_notes/release_26_03.rst | 9 ++
lib/pcapng/rte_pcapng.c | 199 +++++++++++++++++++------
lib/pcapng/rte_pcapng.h | 12 +-
6 files changed, 307 insertions(+), 102 deletions(-)

--
2.51.0