[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <da1028c4-220c-dc47-6b81-818f7dbdeb9d@gmail.com>
Date: Tue, 24 Apr 2018 10:51:23 -0600
From: David Ahern <dsahern@...il.com>
To: Sukumar Gopalakrishnan <sukumarg1973@...il.com>,
netdev@...r.kernel.org
Subject: Re: VRF: Ingress IPv6 Linklocal/Multicast destined pkt from slave VRF
device does not map to Master device socket
On 4/23/18 11:57 PM, Sukumar Gopalakrishnan wrote:
> Get master device address from (skb->dev) and pass master to socket
> lookup up function for Ipv6 Linklocal/Multicast address.
>
> ipv6_raw_deliver()
> {
> int mdif;
> ..
> ..
> mdif = (((nexthdr == IPPROTO_PIM || nexthdr == 89 /* IPPROTO_OSPF */ ||
> nexthdr == IPPROTO_ICMPV6 || nexthdr == 112 /*IPPROTO_VRRP*/) &&
> (ipv6_addr_type(daddr) &
> (IPV6_ADDR_MULTICAST | IPV6_ADDR_LINKLOCAL))) ?
> l3mdev_master_ifindex_rcu(skb->dev) : inet6_iif(skb));
>
>
> sk = __raw_v6_lookup(net, sk, nexthdr, daddr, saddr, mdif,
> inet6_sdif(skb));
>
Packets destined to a linklocal and mcast address stay bound to the
actual ingress device as that is their scope.
Powered by blists - more mailing lists