This crate can read Pcap files from a reader and write them to a writer.
It also provides several parsers for the Pcap file format.
```rust use std::fs::File; use pcap_file::pcap::PcapReader;
let filein = File::open("test.pcap").expect("Error opening file"); let pcapreader = PcapReader::new(file_in).unwrap();
// Read test.pcap for pcap in pcap_reader {
//Check if there is no error
let pcap = pcap.unwrap();
//Do something
} ```
This crate can read PcapNg files from a reader.
It also provides several parsers for the PcapNg file format.
```rust use std::fs::File; use pcap_file::pcapng::PcapNgReader;
let filein = File::open("test.pcapng").expect("Error opening file"); let pcapngreader = PcapNgReader::new(file_in).unwrap();
// Read test.pcapng for block in pcapng_reader {
//Check if there is no error
let block = block.unwrap();
//Parse block content
let parsed_block = block.parsed().unwrap();
//Do something
} ```
https://docs.rs/pcap-file
This crate is on crates.io.
Add it to your Cargo.toml
:
toml
[dependencies]
pcap-file = "1.1.0"
Licensed under MIT.
To test the library I used the excellent PcapNg testing suite provided by hadrielk.