read old format pcap files

This commit is contained in:
Brandon Thomas
2022-06-29 03:22:02 -04:00
parent 6749ead6cb
commit d46cd8a15e
+37
View File
@@ -4,6 +4,43 @@ use pcap_parser::traits::PcapReaderIterator;
use std::fs::File; use std::fs::File;
pub fn main() { pub fn main() {
old_format();
}
pub fn old_format() {
let path = "anim.pcap";
let file = File::open(path).unwrap();
let mut num_blocks = 0;
let mut reader = LegacyPcapReader::new(65536, file).expect("LegacyPcapReader");
loop {
match reader.next() {
Ok((offset, block)) => {
println!("got new block");
num_blocks += 1;
match block {
PcapBlockOwned::LegacyHeader(_hdr) => {
// save hdr.network (linktype)
},
PcapBlockOwned::Legacy(_b) => {
// use linktype to parse b.data()
},
PcapBlockOwned::NG(_) => unreachable!(),
}
reader.consume(offset);
},
Err(PcapError::Eof) => break,
Err(PcapError::Incomplete) => {
reader.refill().unwrap();
},
Err(e) => panic!("error while reading: {:?}", e),
}
}
println!("num_blocks: {}", num_blocks);
}
pub fn new_format() {
println!("Test"); println!("Test");
//let path = "anim.pcap"; //let path = "anim.pcap";