[PATCH bpf-next v8 4/8] bpf: lsm: Implement attach, detach and execution
jmorris at namei.org
Sat Mar 28 01:08:15 UTC 2020
On Fri, 27 Mar 2020, KP Singh wrote:
> From: KP Singh <kpsingh at google.com>
> JITed BPF programs are dynamically attached to the LSM hooks
> using BPF trampolines. The trampoline prologue generates code to handle
> conversion of the signature of the hook to the appropriate BPF context.
> The allocated trampoline programs are attached to the nop functions
> initialized as LSM hooks.
> BPF_PROG_TYPE_LSM programs must have a GPL compatible license and
> and need CAP_SYS_ADMIN (required for loading eBPF programs).
> Upon attachment:
> * A BPF fexit trampoline is used for LSM hooks with a void return type.
> * A BPF fmod_ret trampoline is used for LSM hooks which return an
> int. The attached programs can override the return value of the
> bpf LSM hook to indicate a MAC Policy decision.
> Signed-off-by: KP Singh <kpsingh at google.com>
> Acked-by: Andrii Nakryiko <andriin at fb.com>
> Reviewed-by: Brendan Jackman <jackmanb at google.com>
> Reviewed-by: Florent Revest <revest at google.com>
Acked-by: James Morris <jamorris at linux.microsoft.com>
<jmorris at namei.org>
More information about the Linux-security-module-archive