faf673ee45
The implementation is based on https://github.com/containers/crun/blob/0.10.2/src/libcrun/ebpf.c Although ebpf.c is originally licensed under LGPL-3.0-or-later, the author Giuseppe Scrivano agreed to relicense the file in Apache License 2.0: https://github.com/opencontainers/runc/issues/2144#issuecomment-543116397 See libcontainer/cgroups/ebpf/devicefilter/devicefilter_test.go for tested configurations. Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp> |
||
---|---|---|
.. | ||
asm | ||
internal | ||
LICENSE | ||
abi.go | ||
collection.go | ||
doc.go | ||
elf_reader.go | ||
feature.go | ||
go.mod | ||
linker.go | ||
map.go | ||
marshalers.go | ||
prog.go | ||
ptr_32_be.go | ||
ptr_32_le.go | ||
ptr_64.go | ||
readme.md | ||
syscalls.go | ||
types.go | ||
types_string.go |
readme.md
eBPF
eBPF is a pure Go library that provides utilities for loading, compiling, and debugging eBPF programs. It has minimal external dependencies and is intended to be used in long running processes.
ebpf/asm contains a basic assembler.
The library is maintained by Cloudflare and Cilium. Feel free to join the libbpf-go channel on Slack.
Current status
The package is production ready, but the API is explicitly unstable right now. Expect to update your code if you want to follow along.