Rust implementation status
Sascha Grunert
saschagrunert at icloud.com
Sun Mar 5 12:42:00 CET 2017
Hey folks,
I want to call for participation of the Rust userspace implementation of WireGuard. The template for the initial implementation was this: https://www.wireguard.io/xplatform/ and can be found here: https://git.zx2c4.com/wireguard-rs/.
What works for now:
- A main working executable (`cargo run -- -h`) which parses the command line parameters via the `clap` crate
- General debug and tracing support via the `log` crate
- Daemonizing support
- The wireguard library which creates a local socket and waits for incoming connections (reference implementation)
What needs to be done in the next steps:
- The actual parsing of the incoming message and writing them to the wireguard device (see `TODO`)
- Higher test coverage via unit testing
- A plan how to use the tokio.rs futures with the current implementation
- Wider operating system (Windows) support for the current implementation
- Get rid of the unsafe code
I tried to use as much idiomatic Rust (like using the `nix` crate and Rust vectors instead of raw pointers) as possible for now. So what do you think?
Best regards,
Sascha
More information about the WireGuard
mailing list