| use smoltcp::phy::wait as phy_wait; |
| use smoltcp::phy::{Device, RawSocket, RxToken}; |
| use smoltcp::time::Instant; |
| use smoltcp::wire::{EthernetFrame, PrettyPrinter}; |
| use std::os::unix::io::AsRawFd; |
| let ifname = env::args().nth(1).unwrap(); |
| let mut socket = RawSocket::new(ifname.as_ref(), smoltcp::phy::Medium::Ethernet).unwrap(); |
| phy_wait(socket.as_raw_fd(), None).unwrap(); |
| let (rx_token, _) = socket.receive(Instant::now()).unwrap(); |
| rx_token.consume(|buffer| { |
| PrettyPrinter::<EthernetFrame<&[u8]>>::new("", &buffer) |