netfilter: nf_tables: disallow element removal on anonymous sets
authorPablo Neira Ayuso <pablo@netfilter.org>
Sun, 10 Sep 2023 17:04:45 +0000 (19:04 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 11 Sep 2023 09:27:13 +0000 (11:27 +0200)
commit23a3bfd4ba7acd36abf52b78605f61b21bdac216
tree4be17732408651cbbdf248e191290884e6aa9d14
parentb079155faae94e9b3ab9337e82100a914ebb4e8d
netfilter: nf_tables: disallow element removal on anonymous sets

Anonymous sets need to be populated once at creation and then they are
bound to rule since 938154b93be8 ("netfilter: nf_tables: reject unbound
anonymous set before commit phase"), otherwise transaction reports
EINVAL.

Userspace does not need to delete elements of anonymous sets that are
not yet bound, reject this with EOPNOTSUPP.

From flush command path, skip anonymous sets, they are expected to be
bound already. Otherwise, EINVAL is hit at the end of this transaction
for unbound sets.

Fixes: 96518518cc41 ("netfilter: add nftables")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nf_tables_api.c