14 unstable releases (3 breaking)

0.4.1 Sep 30, 2020
0.3.0 Jul 2, 2020
0.2.1 Nov 12, 2020
0.1.5 Mar 29, 2020
0.1.3 Dec 19, 2019

#738 in Asynchronous

Download history 3/week @ 2024-06-24 2/week @ 2024-07-01 148/week @ 2024-07-08 181/week @ 2024-07-15 324/week @ 2024-07-22 220/week @ 2024-07-29 184/week @ 2024-08-05 155/week @ 2024-08-12 192/week @ 2024-08-19 172/week @ 2024-08-26 160/week @ 2024-09-02 67/week @ 2024-09-09 80/week @ 2024-09-23

328 downloads per month

MIT license

62KB
1.5K SLoC

pcap-async

build status crates.io version docs.rs docs MIT licensed

Rust async wrapper around pcap-sys. Utilizes Futures 0.3 and Smol.

Documentation

Usage

First, add this to your Cargo.toml:

[dependencies]
pcap-async = "0.3"

Next, add this to your crate:

use futures::StreamExt;
use pcap_async::{Config, Handle, PacketStream};

fn main() {
    smol::run(async move {
        let handle = Handle::lookup().expect("No handle created");
        let mut provider = PacketStream::new(Config::default(), handle)
            .expect("Could not create provider")
            .fuse();
        while let Some(packets) = provider.next().await {
    
        }
        handle.interrupt();
    })
}

Dependencies

~8–21MB
~257K SLoC