From d46cd8a15e372345e3de0cac9a08b921dcffa9f9 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Wed, 29 Jun 2022 03:22:02 -0400 Subject: [PATCH] read old format pcap files --- src/main.rs | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/main.rs b/src/main.rs index a3d946d..e337892 100644 --- a/src/main.rs +++ b/src/main.rs @@ -4,6 +4,43 @@ use pcap_parser::traits::PcapReaderIterator; use std::fs::File; 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"); //let path = "anim.pcap";