vrf: check the original netdevice for generating redirect
Use the right device to determine if redirect should be sent especially when using vrf. Same as well as when sending the redirect. Signed-off-by: Stephen Suryaputra <ssuryaextr@gmail.com> Acked-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
cfed0a2c98
commit
2f17becfbe
@@ -1578,6 +1578,12 @@ void ndisc_send_redirect(struct sk_buff *skb, const struct in6_addr *target)
|
||||
ops_data_buf[NDISC_OPS_REDIRECT_DATA_SPACE], *ops_data = NULL;
|
||||
bool ret;
|
||||
|
||||
if (netif_is_l3_master(skb->dev)) {
|
||||
dev = __dev_get_by_index(dev_net(skb->dev), IPCB(skb)->iif);
|
||||
if (!dev)
|
||||
return;
|
||||
}
|
||||
|
||||
if (ipv6_get_lladdr(dev, &saddr_buf, IFA_F_TENTATIVE)) {
|
||||
ND_PRINTK(2, warn, "Redirect: no link-local address on %s\n",
|
||||
dev->name);
|
||||
|
Reference in New Issue
Block a user