blob: ffd9044bbc0045db9b108099bb27621b6b282c4e [file] [log] [blame]
From f0b09f24ed91fcd1aeeacaaa0dc99ab023bbd2dd Mon Sep 17 00:00:00 2001
From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: Wed, 17 Jul 2019 21:48:32 +0200
Subject: [PATCH] netfilter: nft_meta: skip EAGAIN if nft_meta_bridge is not a
module
commit 78e21eb699203f32f8c524b01fb7363125cf9d68 upstream.
If it is a module, request this module. Otherwise, if it is compiled
built-in or not selected, skip this.
Fixes: 0ef1efd1354d ("netfilter: nf_tables: force module load in case select_ops() returns -EAGAIN")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
diff --git a/net/netfilter/nft_meta.c b/net/netfilter/nft_meta.c
index 9abd01f6512a..b34231cd82ac 100644
--- a/net/netfilter/nft_meta.c
+++ b/net/netfilter/nft_meta.c
@@ -544,7 +544,7 @@ 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 defined(CONFIG_NF_TABLES_BRIDGE) && IS_MODULE(CONFIG_NFT_BRIDGE_META)
if (ctx->family == NFPROTO_BRIDGE)
return ERR_PTR(-EAGAIN);
#endif
--
2.7.4