1 unstable release
Uses old Rust 2015
0.1.0 | Aug 9, 2019 |
---|
#19 in #tun-tap
19KB
208 lines
TunTap
it's derive https://github.com/vorner/tuntap,
add new tokio default handle.
before:
let mut core = Core::new().unwrap(); let iface = Async::new(iface, &core.handle()).unwrap();
edit after: use new tokio default handle,
let iface = Async::new(iface).unwrap();
TUN/TAP wrapper for Rust.
The TUN/TAP allows implementing a virtual network adapter in userspace. This provides the bindings for Rust.
Create an Iface
object and send
or recv
packets. Making some sense of the
packets is, however, out of scope, you need something else for that.
There's documentation and some examples.
Known issues
- Tested only on Linux. Probably doesn't work anywhere else, but pull requests adding support for other OSes are welcome.
- The asynchronous interface is very minimal and probably inefficient. It'll need to be extended to allow more flexible or efficient use.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~4.5MB
~67K SLoC