INNER CODE UNIT · Rust

next_packet

domcyrus/rustnet · crates/rustnet-capture/src/lib.rs:557

    pub fn next_packet(&mut self) -> Result<Option<CapturedPacket>> {
        match self.capture.next_packet() {
            Ok(packet) => {
                self.idle_wait.packet_received();
                let ts = packet.header.ts;
                Ok(Some(CapturedPacket {
                    data: packet.data.to_vec(),
                    timestamp: timeval_to_system_time(ts.tv_sec, ts.tv_usec),
                    original_len: packet.header.len,
                }))
            }
            Err(PcapError::TimeoutExpired) => {
                self.idle_wait.wait(&self.capture);
                Ok(None)
            }
            Err(e) => Err(e.into()),
        }
    }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…