mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-02 16:44:10 +08:00
netfilter: nf_conntrack_h323: Remove deprecated config check
CONFIG_NF_CONNTRACK_IPV6 has been deprecated so replace it with a check
for IPV6 instead.
Use nf_ip6_route6() instead of v6ops->route() and keep the IS_MODULE()
in nf_ipv6_ops as mentioned by Florian so that direct calls are used
when IPV6 is builtin and indirect calls are used only when IPV6 is a
module.
Fixes: a0ae2562c6
("netfilter: conntrack: remove l3proto abstraction")
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
Reviewed-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
f8e6089820
commit
b33c448c4f
@ -748,24 +748,19 @@ static int callforward_do_filter(struct net *net,
|
||||
}
|
||||
break;
|
||||
}
|
||||
#if IS_ENABLED(CONFIG_NF_CONNTRACK_IPV6)
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
case AF_INET6: {
|
||||
const struct nf_ipv6_ops *v6ops;
|
||||
struct rt6_info *rt1, *rt2;
|
||||
struct flowi6 fl1, fl2;
|
||||
|
||||
v6ops = nf_get_ipv6_ops();
|
||||
if (!v6ops)
|
||||
return 0;
|
||||
|
||||
memset(&fl1, 0, sizeof(fl1));
|
||||
fl1.daddr = src->in6;
|
||||
|
||||
memset(&fl2, 0, sizeof(fl2));
|
||||
fl2.daddr = dst->in6;
|
||||
if (!v6ops->route(net, (struct dst_entry **)&rt1,
|
||||
if (!nf_ip6_route(net, (struct dst_entry **)&rt1,
|
||||
flowi6_to_flowi(&fl1), false)) {
|
||||
if (!v6ops->route(net, (struct dst_entry **)&rt2,
|
||||
if (!nf_ip6_route(net, (struct dst_entry **)&rt2,
|
||||
flowi6_to_flowi(&fl2), false)) {
|
||||
if (ipv6_addr_equal(rt6_nexthop(rt1, &fl1.daddr),
|
||||
rt6_nexthop(rt2, &fl2.daddr)) &&
|
||||
|
Loading…
Reference in New Issue
Block a user