From 2a27f04cc18140d09b199f0f66cd72c43ea556ff Mon Sep 17 00:00:00 2001 From: Will Greenberg Date: Wed, 27 Dec 2023 15:45:49 -0800 Subject: [PATCH] wavehunter_reader: update to new interfaces --- src/bin/wavehunter_reader.rs | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/bin/wavehunter_reader.rs b/src/bin/wavehunter_reader.rs index 470d054..432f36e 100644 --- a/src/bin/wavehunter_reader.rs +++ b/src/bin/wavehunter_reader.rs @@ -1,7 +1,9 @@ -use wavehunter::qmdl::QmdlFileReader; +use std::fs::File; + +use wavehunter::qmdl::QmdlReader; use wavehunter::diag_reader::DiagReader; use wavehunter::gsmtap_parser::GsmtapParser; -use wavehunter::pcap::PcapFile; +use wavehunter::pcap::GsmtapPcapWriter; use log::{debug, error}; @@ -13,11 +15,18 @@ fn main() { error!("Usage: {} /path/to/qmdl/file", args[0]); std::process::exit(1); } - let mut qmdl_reader = QmdlFileReader::new(&args[1]).unwrap(); + + let qmdl_file = File::open(&args[1]).unwrap(); + let mut qmdl_reader = QmdlReader::new(qmdl_file, None); let mut gsmtap_parser = GsmtapParser::new(); - let mut pcap_file = PcapFile::new("./wavehunter.pcap").unwrap(); - pcap_file.write_iface_header().unwrap(); + let pcap_file = std::fs::File::options() + .create(true) + .write(true) + .open("./wavehunter.pcap") + .expect("error opening pcap file"); + let mut pcap_writer = GsmtapPcapWriter::new(pcap_file).unwrap(); + pcap_writer.write_iface_header().unwrap(); loop { for maybe_msg in qmdl_reader.read_response().expect("error reading qmdl file") { @@ -27,7 +36,7 @@ fn main() { let maybe_gsmtap_msg = gsmtap_parser.recv_message(msg).expect("error parsing gsmtap message"); if let Some((timestamp, gsmtap_msg)) = maybe_gsmtap_msg { debug!("gsmtap_msg: {:?}", gsmtap_msg); - pcap_file.write_gsmtap_message(gsmtap_msg, timestamp) + pcap_writer.write_gsmtap_message(gsmtap_msg, timestamp) .expect("error writing pcap packet"); } },