Documentation ¶
Index ¶
Constants ¶
View Source
const ( BPF_F_NO_PREALLOC = 1 << 0 BPF_F_NO_COMMON_LRU = 1 << 1 BPF_DIR_MNT = "/sys/fs/bpf/" BPF_DIR_GLOBALS = "globals" BPF_FS_MAGIC = 0xcafe4a11 BPFObjNameLen = 16 BPFProgInfoAlign = 8 BPFTagSize = 8 /* * C struct of bpf_ins is 8 bytes because of this - * struct bpf_insn { * __u8 code; * __u8 dst_reg:4; * __u8 src_reg:4; * __s16 off; * __s32 imm; * }; * while go struct will return 9 since we dont have bit fields hence we dec(1). */ PROG_BPF_FS = "/sys/fs/bpf/globals/aws/programs/" MAP_BPF_FS = "/sys/fs/bpf/globals/aws/maps/" TRACEPOINT_EVENTS = "/sys/kernel/debug/tracing/events" KPROBE_SYS_EVENTS = "/sys/kernel/debug/tracing/kprobe_events" KPROBE_SYS_DEBUG = "/sys/kernel/debug/tracing/events/kprobes" KRETPROBE_SYS_DEBUG = "/sys/kernel/debug/tracing/events/kretprobes" QDISC_HANDLE = 0xffff DEFAULT_BPF_FILTER_HANDLE = 0x1 )
View Source
const ( XDP_ATTACH_MODE_NONE = 1 << iota XDP_ATTACH_MODE_SKB XDP_ATTACH_MODE_DRV XDP_ATTACH_MODE_HW )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EBPFCmdType ¶
type EBPFCmdType uint32
const ( // BPF syscall command constants. Must match enum bpf_cmd from linux/bpf.h BPF_MAP_CREATE EBPFCmdType = iota BPF_MAP_LOOKUP_ELEM BPF_MAP_UPDATE_ELEM BPF_MAP_DELETE_ELEM BPF_MAP_GET_NEXT_KEY BPF_PROG_LOAD BPF_OBJ_PIN BPF_OBJ_GET BPF_PROG_ATTACH BPF_PROG_DETACH BPF_PROG_TEST_RUN BPF_PROG_GET_NEXT_ID BPF_MAP_GET_NEXT_ID BPF_PROG_GET_FD_BY_ID BPF_MAP_GET_FD_BY_ID BPF_OBJ_GET_INFO_BY_FD )
type EBPFMapType ¶
type EBPFMapType uint32
const ( // BPF map type constants. Must match enum bpf_map_type from linux/bpf.h BPF_MAP_TYPE_UNSPEC EBPFMapType = iota BPF_MAP_TYPE_HASH BPF_MAP_TYPE_ARRAY BPF_MAP_TYPE_PROG_ARRAY BPF_MAP_TYPE_PERF_EVENT_ARRAY BPF_MAP_TYPE_PERCPU_HASH BPF_MAP_TYPE_PERCPU_ARRAY BPF_MAP_TYPE_STACK_TRACE BPF_MAP_TYPE_CGROUP_ARRAY BPF_MAP_TYPE_LRU_HASH BPF_MAP_TYPE_LRU_PERCPU_HASH BPF_MAP_TYPE_LPM_TRIE BPF_MAP_TYPE_ARRAY_OF_MAPS BPF_MAP_TYPE_HASH_OF_MAPS BPF_MAP_TYPE_DEVMAP BPF_MAP_TYPE_SOCKMAP BPF_MAP_TYPE_CPUMAP BPF_MAP_TYPE_XSKMAP BPF_MAP_TYPE_SOCKHASH BPF_MAP_TYPE_CGROUP_STORAGE BPF_MAP_TYPE_REUSEPORT_SOCKARRAY BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE BPF_MAP_TYPE_QUEUE BPF_MAP_TYPE_STACK BPF_MAP_TYPE_SK_STORAGE BPF_MAP_TYPE_DEVMAP_HASH BPF_MAP_TYPE_STRUCT_OPS BPF_MAP_TYPE_RINGBUF BPF_MAP_TYPE_INODE_STORAGE )
Currently synced with 5.10.188 - https://elixir.bootlin.com/linux/v5.10.188/source/include/uapi/linux/bpf.h
func (EBPFMapType) Index ¶
func (mapType EBPFMapType) Index() uint32
type EBPFMapUpdateType ¶
type EBPFMapUpdateType uint32
const ( // Flags for BPF_MAP_UPDATE_ELEM. Must match values from linux/bpf.h BPF_ANY EBPFMapUpdateType = iota BPF_NOEXIST BPF_EXIST )
type EBPFPinType ¶
type EBPFPinType uint32
const ( // BPF MAP pinning PIN_NONE EBPFPinType = iota PIN_OBJECT_NS PIN_GLOBAL_NS PIN_CUSTOM_NS )
func (EBPFPinType) Index ¶
func (pinType EBPFPinType) Index() uint32
type XDPattachType ¶
type XDPattachType int
Click to show internal directories.
Click to hide internal directories.