pcarp

A pure-Rust library for reading pcapng files.

Limitations

libpcap is full of features; pcarp just reads packets out of pcapng files. Limitations compared to libpcap:

If you want to parse ethernet/IP/TCP/whatever protocol, you need another library. We use [etherparse] and it works well. There's also [pnet] or [rshark], although I haven't tried them.

Error handling

pcarp is designed to be very resilient to errors, even given malformed or malicious input.

pcarp should never panic. It's fuzzed to help ensure that this is the case, but fuzzing isn't perfect. If you experience a crash, please report it!

License

The software itself is in the public domain.

Some of the documentation is copied from the pcap spec, so the copyright is owned by the IETF; these places are cleary marked. The pcaps used by the integration tests are distributed by the Wireshark Foundation under the terms of the GNU GPL.