oping 0.3.5

Rust bindings for liboping, a simple ICMP ping library
docs.rs failed to build oping-0.3.5
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: oping-0.3.3

liboping bindings for Rust: simple ICMP pings

This crate is a simple Rust binding for liboping, a library that implements basic ICMP ping functionality. These bindings allow a Rust program to send ping packets (possibly to multiple hosts in parallel) and enumerate the responses.

This crate also includes a very simple program rustping that uses the bindings to implement a barebones command-line ping utility.

This crate includes liboping in its source tree (as a submodule) and builds it into the Rust library, so there is no need to build and install it separately. However, there are several dependencies required to build this:

  • GNU autotools: libtool, autoconf, and automake (These can be found as packages in most GNU/Linux distributions, and in OS X's Homebrew system, for example.)
  • A system C compiler (gcc or equivalent)

This crate was written by Chris Fallin <cfallin@c1f.net> and is released under the MIT license.

Documentation is available here, and the crate is available as oping on crates.io here.

NOTE: sending ping packets requires either running as root or setting a capability on your binary, at least on Linux. This is a restriction enforced by the system, not by this crate. To set the capability, run the following as root:

$ setcap cap_net_raw+ep $MY_BINARY    # allow binary to send ping packets