#ccp #bindings #datapath #connection #datapaths

libccp

Rust bindings for libccp, a library for implementing CCP-compatible datapaths

17 releases (4 stable)

Uses new Rust 2024

1.2.0 Oct 9, 2025
1.1.1 Jul 20, 2021
1.0.0 May 20, 2021
0.0.13 Aug 16, 2020
0.0.7 Feb 7, 2019

#3 in #ccp


Used in portus

ISC license

120KB
2.5K SLoC

C 2K SLoC // 0.1% comments Rust 824 SLoC // 0.0% comments Python 20 SLoC

Rust bindings for libccp. This crate is useful for writing CCP datapaths in Rust.

Users need to implement two traits: Datapath and CongestionOps. Datapath implements not specific to a single connection. CongestionOps implements connection-level events.


Libccp is an implementation of the core functionality necsesary for a datapath to communicate with a CCP process.

This crate implements Rust bindings for libccp. It is useful for datapaths implemented in Rust which wish to add CCP support.

If you do not need to create a new datapath and just want to get started using CCP, please see the guide.

Dependencies

~0.9–3MB
~56K SLoC