summaryrefslogtreecommitdiff
path: root/include/linux/errqueue.h
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2026-08-31 17:11:04 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2026-10-11 22:55:23 +0200
commit18e03721933c3193d7ac450976ca0e5e560b224f (patch)
tree7a6a96b9ce558888c7ccd161363d7794bedea558 /include/linux/errqueue.h
parenta5e7d8e446af9803e37a3b6a4d416fb41178348f (diff)
netfilter: disable br_netfilter in user namespaces
br_netfilter has way too many bugs, schedule for removal and disable the feature in user namespaces. In particular, we get more and more gadgets to have bridge ports escape rcu_read_lock() protection, then underlying device gets reconfigured (macvlan or something else), then reinject into network stack causes crash because net_device is assumed to still have bridge rx data associated with it. br_netfilter is an ancient kludge that emulates ip stack from within the bridge and then calls into ipv4/ipv6 netfilter hooks to have bridged frames processed via iptables/ip6tables by setting the 'call-iptables' sysctls to 1. It is NOT related to ebtables or nftables 'bridge' family at all. Note that in addition to call-iptables, sysctls, the bridge also exposes call-iptables per bridge device via netlink and sysfs ('BROPT_NF_CALL_IPTABLES') toggles. Those are still available, the brnet structure is scoped to br_netfilter; exposing it bridge-wide is a big no-no. This relies on brnf_device_event() no longer registering the base br_netfilter hooks, so while BROPT_NF_CALL_IPTABLES can be set, it has no effect because the hooks that evaluate this feature bit are never registered. brnf_init_net can no longer depend on CONFIG_SYSCTL, else such builds never disable support in user namespaces. Cc: Nikolay Aleksandrov <razor@blackwall.org> Signed-off-by: Florian Westphal <fw@strlen.de> Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/linux/errqueue.h')
0 files changed, 0 insertions, 0 deletions