package internal import ( "runtime" "unsafe" "github.com/cilium/ebpf/internal/unix" ) // BPF wraps SYS_BPF. // // Any pointers contained in attr must use the Pointer type from this package. func BPF(cmd int, attr unsafe.Pointer, size uintptr) (uintptr, error) { r1, _, errNo := unix.Syscall(unix.SYS_BPF, uintptr(cmd), uintptr(attr), size) runtime.KeepAlive(attr) var err error if errNo != 0 { err = errNo } return r1, err }