bpf-api

Crates.iobpf-api
lib.rsbpf-api
version0.3.1
sourcesrc
created_at2022-10-25 00:56:31.707126
updated_at2024-01-23 11:35:15.518312
descriptionIdomatic Rust bindings for eBPF programs, probes, and maps.
homepagehttps://github.com/arcjustin/bpf-api
repositoryhttps://github.com/arcjustin/bpf-api
max_upload_size
id696386
size88,627
(arcjustin)

documentation

README

bpf-api

Build Status crates.io mio Lines of Code

Idomatic Rust bindings for eBPF programs, probes, and maps.

The motive behind this crate and sister crates: btf, btf-derive, bpf-ins, and bpf-script, aside from learning more about eBPF, was to be able to have a fully Rust eBPF solution. That is, the ability to easily write, compile, and attach BPF programs and use maps without any dependencies on bcc, libbpf or any other non-Rust BPF dependencies.

Usage

For usage examples, see code located in examples/ :

Examples Description
array A short example using a BPF array
print-programs A short example that attachs a probe to sched_process_exec and prints program executions
user-tracer Probes a given image path and symbol name using uprobes

TODO

  • Add ARM support.
  • Make probe attachment easier / write convenience macros.

License

Commit count: 45

cargo fmt