diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2019-07-06 00:38:54 +0300 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2019-07-06 09:37:36 +0300 |
commit | 0ef1efd1354d732d040f29b2005420f83fcdd8f4 (patch) | |
tree | 3ccecab23ef06ae80c4cc449ae33ff17edbf8947 /net/netfilter/nft_meta.c | |
parent | 9cff126f73a7025bcb0883189b2bed90010a57d4 (diff) | |
download | linux-0ef1efd1354d732d040f29b2005420f83fcdd8f4.tar.xz |
netfilter: nf_tables: force module load in case select_ops() returns -EAGAIN
nft_meta needs to pull in the nft_meta_bridge module in case that this
is a bridge family rule from the select_ops() path.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/netfilter/nft_meta.c')
-rw-r--r-- | net/netfilter/nft_meta.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/netfilter/nft_meta.c b/net/netfilter/nft_meta.c index 18a848b01759..417f8d32e9a3 100644 --- a/net/netfilter/nft_meta.c +++ b/net/netfilter/nft_meta.c @@ -519,6 +519,10 @@ nft_meta_select_ops(const struct nft_ctx *ctx, if (tb[NFTA_META_DREG] && tb[NFTA_META_SREG]) return ERR_PTR(-EINVAL); +#ifdef CONFIG_NF_TABLES_BRIDGE + if (ctx->family == NFPROTO_BRIDGE) + return ERR_PTR(-EAGAIN); +#endif if (tb[NFTA_META_DREG]) return &nft_meta_get_ops; |