bpf_token_capable
if (bpf_token_capable(prog->aux->token, CAP_PERFMON))
bool bpf_token_capable(const struct bpf_token *token, int cap);
return bpf_token_capable(token, CAP_PERFMON);
return bpf_token_capable(token, CAP_PERFMON);
bpf_token_capable(token, CAP_PERFMON);
bpf_token_capable(token, CAP_PERFMON);
if (bpf_jit_harden == 1 && bpf_token_capable(prog->aux->token, CAP_BPF))
LSM_HOOK(int, 0, bpf_token_capable, const struct bpf_token *token, int cap)
!bpf_token_capable(fp->aux->token, CAP_BPF))
if (!bpf_token_capable(prog->aux->token, CAP_BPF))
if (!bpf_token_capable(prog->aux->token, CAP_PERFMON))
if (!bpf_token_capable(token, CAP_BPF)) {
if (sysctl_unprivileged_bpf_disabled && !bpf_token_capable(token, CAP_BPF))
if (!bpf_token_capable(token, CAP_BPF))
if (!bpf_token_capable(token, CAP_NET_ADMIN))
bpf_cap = bpf_token_capable(token, CAP_BPF);
if (is_net_admin_prog_type(type) && !bpf_token_capable(token, CAP_NET_ADMIN))
if (is_perfmon_prog_type(type) && !bpf_token_capable(token, CAP_PERFMON))
if (!bpf_token_capable(prog->aux->token, CAP_NET_ADMIN))
if (!bpf_token_capable(token, CAP_BPF)) {
if (!bpf_token_capable(token, CAP_SYS_ADMIN)) {
return !bpf_token_capable(prog->aux->token, CAP_PERFMON)
env->bpf_capable = is_priv = bpf_token_capable(env->prog->aux->token, CAP_BPF);
if (!bpf_token_capable(prog->aux->token, CAP_SYS_ADMIN))
if (!bpf_token_capable(prog->aux->token, CAP_PERFMON))
if (!bpf_token_capable(prog->aux->token, CAP_BPF))
if (!bpf_token_capable(prog->aux->token, CAP_BPF))
return call_int_hook(bpf_token_capable, token, cap);
LSM_HOOK_INIT(bpf_token_capable, selinux_bpf_token_capable),