// Here we iniitialize systems crucial for nsc use std::io::Read; use sniffing::headers::sniff_raw_packets; pub fn init() -> Result<(), Box> { let mut config = tun::Configuration::default(); config .address((10, 0, 0, 9)) .netmask((255, 255, 255, 0)) .destination((10, 0, 0, 1)) .up(); #[cfg(target_os = "linux")] config.platform_config(|config| { // requiring root privilege to acquire complete functions config.ensure_root_privileges(true); }); let mut dev = tun::create(&config)?; let mut buf = [0; 4096]; loop { let amount = dev.read(&mut buf)?; sniff_raw_packets(&buf[0..amount]); dbg!("{:?}", &buf[0..amount]); } }