diff options
author | Andrii Nakryiko <andrii@kernel.org> | 2023-06-13 15:35:32 -0700 |
---|---|---|
committer | Daniel Borkmann <daniel@iogearbox.net> | 2023-06-19 14:04:04 +0200 |
commit | 6c3eba1c5e283fd2bb1c076dbfcb47f569c3bfde (patch) | |
tree | 529142270bc25c37d2a49fc15ab078ed9996fb6f /net/xdp | |
parent | 22db41226b679768df8f0a4ff5de8e58f625f45b (diff) | |
download | linux-stable-6c3eba1c5e283fd2bb1c076dbfcb47f569c3bfde.tar.gz linux-stable-6c3eba1c5e283fd2bb1c076dbfcb47f569c3bfde.tar.bz2 linux-stable-6c3eba1c5e283fd2bb1c076dbfcb47f569c3bfde.zip |
bpf: Centralize permissions checks for all BPF map types
This allows to do more centralized decisions later on, and generally
makes it very explicit which maps are privileged and which are not
(e.g., LRU_HASH and LRU_PERCPU_HASH, which are privileged HASH variants,
as opposed to unprivileged HASH and HASH_PERCPU; now this is explicit
and easy to verify).
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Stanislav Fomichev <sdf@google.com>
Link: https://lore.kernel.org/bpf/20230613223533.3689589-4-andrii@kernel.org
Diffstat (limited to 'net/xdp')
-rw-r--r-- | net/xdp/xskmap.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/net/xdp/xskmap.c b/net/xdp/xskmap.c index 2c1427074a3b..e1c526f97ce3 100644 --- a/net/xdp/xskmap.c +++ b/net/xdp/xskmap.c @@ -5,7 +5,6 @@ #include <linux/bpf.h> #include <linux/filter.h> -#include <linux/capability.h> #include <net/xdp_sock.h> #include <linux/slab.h> #include <linux/sched.h> @@ -68,9 +67,6 @@ static struct bpf_map *xsk_map_alloc(union bpf_attr *attr) int numa_node; u64 size; - if (!capable(CAP_NET_ADMIN)) - return ERR_PTR(-EPERM); - if (attr->max_entries == 0 || attr->key_size != 4 || attr->value_size != 4 || attr->map_flags & ~(BPF_F_NUMA_NODE | BPF_F_RDONLY | BPF_F_WRONLY)) |