vrf: Fix IPv6 with qdisc and xfrm
authorDavid Ahern <dsahern@gmail.com>
Tue, 21 Apr 2020 23:48:27 +0000 (17:48 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 29 Apr 2020 14:33:10 +0000 (16:33 +0200)
commit07856b2108cfe82e3bce1e64e3f2dfc1d567eeb1
treea9bd064d4c028f82010a67f98d94cfe7aa715ca8
parent755425c1b004e9297e048b664b2882e27680094a
vrf: Fix IPv6 with qdisc and xfrm

[ Upstream commit a53c102872ad6e34e1518e25899dc9498c27f8b1 ]

When a qdisc is attached to the VRF device, the packet goes down the ndo
xmit function which is setup to send the packet back to the VRF driver
which does a lookup to send the packet out. The lookup in the VRF driver
is not considering xfrm policies. Change it to use ip6_dst_lookup_flow
rather than ip6_route_output.

Fixes: 35402e313663 ("net: Add IPv6 support to VRF device")
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/vrf.c