bpf: Gate dynptr API behind CAP_BPF
authorKumar Kartikeya Dwivedi <memxor@gmail.com>
Wed, 21 Sep 2022 14:35:50 +0000 (16:35 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 21 Sep 2022 21:11:23 +0000 (14:11 -0700)
commit8addbfc7b308d591f8a5f2f6bb24d08d9d79dfbb
tree5be18b6e0f5ad60dc22befc4b156d0d7f8ca1451
parentd703256f53010a08c84f58adb89cb7da6002207c
bpf: Gate dynptr API behind CAP_BPF

This has been enabled for unprivileged programs for only one kernel
release, hence the expected annoyances due to this move are low. Users
using ringbuf can stick to non-dynptr APIs. The actual use cases dynptr
is meant to serve may not make sense in unprivileged BPF programs.

Hence, gate these helpers behind CAP_BPF and limit use to privileged
BPF programs.

Fixes: 263ae152e962 ("bpf: Add bpf_dynptr_from_mem for local dynptrs")
Fixes: bc34dee65a65 ("bpf: Dynptr support for ring buffers")
Fixes: 13bbbfbea759 ("bpf: Add bpf_dynptr_read and bpf_dynptr_write")
Fixes: 34d4ef5775f7 ("bpf: Add dynptr data slices")
Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Link: https://lore.kernel.org/r/20220921143550.30247-1-memxor@gmail.com
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
kernel/bpf/helpers.c