Crate caracat

source ·
Expand description

caracat

crates.io docs.rs test publish

caracat (always in lowercase) is a port of caracal from C++ to Rust.

The initial motivation was to benefit from a saner build system to make the project easier to maintain. The architecture is very similar between the two projects and the input/output format is the same.

Two example binaries are provided:

# Implementation of caracal command-line interface
cargo run --example caracal -- --help
# (Partial) implementation of yarrp
cargo run --example yarrp -- --help

For more information, please refer to the caracal documentation and to the API documentation.

Re-exports

Modules

  • Functions for building probe packets.
  • Functions for computing the caracat checksum.
  • High-level interface for sending probes and capturing replies.
  • Utilities for logging probing statistics.
  • Data structures for representing probes and replies.
  • Find routes and resolve link-layer addresses.
  • Function for parsing replies.
  • High-level interface for sending probes.
  • Limit the rate at which packets are sent.
  • High-level interface for capturing replies.
  • Send probes on the network.
  • Utilities for encoding timestamps in probe packets.
  • Data structures for filtering IP addresses.
  • Utilities.