diff mbox series

[v2] netfilter: fix NETFILTER_XT_TARGET_TEE dependencies

Message ID 20190313211622.389120-1-arnd@arndb.de
State Accepted
Commit d1fa381033eb718df5c602f64b6e88676138dfc6
Headers show
Series [v2] netfilter: fix NETFILTER_XT_TARGET_TEE dependencies | expand

Commit Message

Arnd Bergmann March 13, 2019, 9:15 p.m. UTC
With NETFILTER_XT_TARGET_TEE=y and IP6_NF_IPTABLES=m, we get a link
error when referencing the NF_DUP_IPV6 module:

net/netfilter/xt_TEE.o: In function `tee_tg6':
xt_TEE.c:(.text+0x14): undefined reference to `nf_dup_ipv6'

The problem here is the 'select NF_DUP_IPV6 if IP6_NF_IPTABLES'
that forces NF_DUP_IPV6 to be =m as well rather than setting it
to =y as was intended here. Adding a soft dependency on
IP6_NF_IPTABLES avoids that broken configuration.

Fixes: 5d400a4933e8 ("netfilter: Kconfig: Change select IPv6 dependencies")
Cc: Máté Eckl <ecklm94@gmail.com>
Cc: Taehee Yoo <ap420073@gmail.com>
Link: https://patchwork.ozlabs.org/patch/999498/
Link: https://lore.kernel.org/patchwork/patch/960062/
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
Resending this one, I had sent another version before last July,
and then Máté Eckl did a combined version that I thought was
sufficient, but I had left my old patch in the randconfig
build tree, so I failed to notice that it was still required.

Taehee Yoo also prepared a patch to address this, but that patch
was never merged, and I suspect it did not catch all cases either,
so we still need mine.
---
 net/netfilter/Kconfig | 1 +
 1 file changed, 1 insertion(+)

-- 
2.20.0

Comments

Pablo Neira Ayuso March 18, 2019, 3:22 p.m. UTC | #1
On Wed, Mar 13, 2019 at 10:15:59PM +0100, Arnd Bergmann wrote:
> With NETFILTER_XT_TARGET_TEE=y and IP6_NF_IPTABLES=m, we get a link

> error when referencing the NF_DUP_IPV6 module:

> 

> net/netfilter/xt_TEE.o: In function `tee_tg6':

> xt_TEE.c:(.text+0x14): undefined reference to `nf_dup_ipv6'

> 

> The problem here is the 'select NF_DUP_IPV6 if IP6_NF_IPTABLES'

> that forces NF_DUP_IPV6 to be =m as well rather than setting it

> to =y as was intended here. Adding a soft dependency on

> IP6_NF_IPTABLES avoids that broken configuration.


Applied, thanks Arnd.
diff mbox series

Patch

diff --git a/net/netfilter/Kconfig b/net/netfilter/Kconfig
index 964bc317ad0a..ca3ba7548998 100644
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
@@ -1008,6 +1008,7 @@  config NETFILTER_XT_TARGET_TEE
 	depends on NETFILTER_ADVANCED
 	depends on IPV6 || IPV6=n
 	depends on !NF_CONNTRACK || NF_CONNTRACK
+	depends on IP6_NF_IPTABLES || !IP6_NF_IPTABLES
 	select NF_DUP_IPV4
 	select NF_DUP_IPV6 if IP6_NF_IPTABLES
 	---help---