]> git.baikalelectronics.ru Git - kernel.git/commit
sit: Fix ipip6_tunnel_lookup device matching criteria
authorShmulik Ladkani <shmulik.ladkani@gmail.com>
Thu, 14 Aug 2014 12:27:20 +0000 (15:27 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Aug 2014 21:38:54 +0000 (14:38 -0700)
commit671808b7dc4d3d07ec30a4ba5aaf18eb5c5c78ac
tree875de67e132fae67722ed9b478710b76f34eaddd
parenta4b89d92baaa4f23442ceaba862cda5cc72ffdf7
sit: Fix ipip6_tunnel_lookup device matching criteria

As of 224d3c630f ("sit: strictly restrict incoming traffic to tunnel link device"),
when looking up a tunnel, tunnel's underlying interface (t->parms.link)
is verified to match incoming traffic's ingress device.

However the comparison was incorrectly based on skb->dev->iflink.

Instead, dev->ifindex should be used, which correctly represents the
interface from which the IP stack hands the ipip6 packets.

This allows setting up sit tunnels bound to vlan interfaces (otherwise
incoming ipip6 traffic on the vlan interface was dropped due to
ipip6_tunnel_lookup match failure).

Signed-off-by: Shmulik Ladkani <shmulik.ladkani@gmail.com>
Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/sit.c