aboutsummaryrefslogtreecommitdiffstats
path: root/net/netfilter/nft_redir.c
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2016-11-15 21:36:41 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2016-12-04 21:16:51 +0100
commita357b3f80bc8d785ac7bdb99eb10ad0ba51275c9 (patch)
treef24a617cd8568ad033559c65b3328f832858d82f /net/netfilter/nft_redir.c
parentnetfilter: add and use nf_ct_netns_get/put (diff)
downloadlinux-dev-a357b3f80bc8d785ac7bdb99eb10ad0ba51275c9.tar.xz
linux-dev-a357b3f80bc8d785ac7bdb99eb10ad0ba51275c9.zip
netfilter: nat: add dependencies on conntrack module
MASQUERADE, S/DNAT and REDIRECT already call functions that depend on the conntrack module. However, since the conntrack hooks are now registered in a lazy fashion (i.e., only when needed) a symbol reference is not enough. Thus, when something is added to a nat table, make sure that it will see packets by calling nf_ct_netns_get() which will register the conntrack hooks in the current netns. An alternative would be to add these dependencies to the NAT table. However, that has problems when using non-modular builds -- we might register e.g. ipv6 conntrack before its initcall has run, leading to NULL deref crashes since its per-netns storage has not yet been allocated. Adding the dependency in the modules instead has the advantage that nat table also does not register its hooks until rules are added. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/netfilter/nft_redir.c')
0 files changed, 0 insertions, 0 deletions