This review is from Crev, a distributed system for code reviews. To add your review, set up cargo-crev.

The current version of wireguard-uapi is 3.0.0.

2.0.5 (older version) Rating: Positive Thoroughness: Medium Understanding: Medium

by gitlab.com/phgsng on 2022-06-29

Safety

Zero uses of unsafe by virtue of the safe APIs provided by neli.

Pros

  • Safe APIs for the Wireguard Netlink interface, does eliminate the need for unsafe primitives talking to the kernel.

  • Exposes a foolproof API wrapping more low-level components like Netlink sockets.

  • Under active development.

Cons

  • Currently (v2.0.5) dependent on an ancient version of the neli library.

  • Depends on numerous v0.x versioned crates (neli, libc).


Lib.rs has been able to verify that all files in the crate's tarball, except Cargo.lock, are in the crate's repository with a git tag matching the version. Please note that this check is still in beta, and absence of this confirmation does not mean that the files don't match.

Crates in the crates.io registry are tarball snapshots uploaded by crates' publishers. The registry is not using crates' git repositories, so there is a possibility that published crates have a misleading repository URL, or contain different code from the code in the repository.

To review the actual code of the crate, it's best to use cargo crev open wireguard-uapi. Alternatively, you can download the tarball of wireguard-uapi v3.0.0 or view the source online.