Enum redbpf::Program [−][src]
pub enum Program {
KProbe(KProbe),
KRetProbe(KProbe),
UProbe(UProbe),
URetProbe(UProbe),
SocketFilter(SocketFilter),
TracePoint(TracePoint),
XDP(XDP),
StreamParser(StreamParser),
StreamVerdict(StreamVerdict),
}
Expand description
A BPF program defined in a Module.
Variants
Tuple Fields of KProbe
0: KProbe
Tuple Fields of KRetProbe
0: KProbe
Tuple Fields of UProbe
0: UProbe
Tuple Fields of URetProbe
0: UProbe
Tuple Fields of SocketFilter
0: SocketFilter
Tuple Fields of TracePoint
0: TracePoint
Tuple Fields of XDP
0: XDP
Tuple Fields of StreamParser
0: StreamParser
Tuple Fields of StreamVerdict
Implementations
Load the BPF program.
BPF programs need to be loaded before they can be attached. Loading will fail if the BPF verifier rejects the code.
Example
use redbpf::Module;
let mut module = Module::parse(&std::fs::read("file.elf").unwrap()).unwrap();
for program in module.programs.iter_mut() {
program
.load(module.version, module.license.clone()).unwrap()
}