[−][src]Crate solana_rbpf
Virtual machine and JIT compiler for eBPF programs.
Modules
assembler | This module translates eBPF assembly language to binary. |
disassembler | Functions in this module are used to handle eBPF programs with a higher level representation, for example to disassemble the code into a human-readable format. |
ebpf | This module contains all the definitions related to eBPF, and some functions permitting to manipulate eBPF instructions. |
elf | This module relocates a BPF ELF |
helpers | This module implements some built-in helpers that can be called from within an eBPF program. |
insn_builder | Module provides API to create eBPF programs by Rust programming language |
Structs
EbpfVmFixedMbuff | A virtual machine to run eBPF program. This kind of VM is used for programs expecting to work on a metadata buffer containing pointers to packet data, but it internally handles the buffer so as to save the effort to manually handle the metadata buffer for the user. |
EbpfVmMbuff | A virtual machine to run eBPF program. This kind of VM is used for programs expecting to work on a metadata buffer containing pointers to packet data. |
EbpfVmNoData | A virtual machine to run eBPF program. This kind of VM is used for programs that do not work with any memory area—no metadata buffer, no packet data either. |
EbpfVmRaw | A virtual machine to run eBPF program. This kind of VM is used for programs expecting to work directly on the memory area representing packet data. |
MemoryRegion | memory region for bounds checking |
Type Definitions
JitProgram | eBPF Jit-compiled program. |
Verifier | eBPF verification function that returns an error if the program does not meet its requirements. |