[PATCH] vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled

From: David Ahern <dsahern@gmail.com> mainline inclusion from mainline-v5.4-rc1 commit dac91170f8e9c73784af5fad6225e954b795601c category: bugfix bugzilla: 23512 CVE: NA ------------------------------------- A user reported that vrf create fails when IPv6 is disabled at boot using 'ipv6.disable=1': https://bugzilla.kernel.org/show_bug.cgi?id=204903 The failure is adding fib rules at create time. Add RTNL_FAMILY_IP6MR to the check in vrf_fib_rule if ipv6_mod_enabled is disabled. Fixes: e4a38c0c4b27 ("ipv6: add vrf table handling code for ipv6 mcast") Signed-off-by: David Ahern <dsahern@gmail.com> Cc: Patrick Ruddy <pruddy@vyatta.att-mail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: guodeqing <geffrey.guo@huawei.com> Reviewed-by: Wenan Mao <maowenan@huawei.com> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> --- drivers/net/vrf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c index af7b809..f94b4f4 100644 --- a/drivers/net/vrf.c +++ b/drivers/net/vrf.c @@ -1158,7 +1158,8 @@ static int vrf_fib_rule(const struct net_device *dev, __u8 family, bool add_it) struct sk_buff *skb; int err; - if (family == AF_INET6 && !ipv6_mod_enabled()) + if ((family == AF_INET6 || family == RTNL_FAMILY_IP6MR) && + !ipv6_mod_enabled()) return 0; skb = nlmsg_new(vrf_fib_rule_nl_size(), GFP_KERNEL); -- 1.8.3
participants (1)
-
Yang Yingliang