ipv6: don't reject link-local nexthop on other interface
authorFlorian Westphal <fw@strlen.de>
Fri, 7 Aug 2015 08:54:28 +0000 (10:54 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 10 Aug 2015 20:29:22 +0000 (13:29 -0700)
commit330567b71d8716704b189454553c2696e1eceb6c
tree88a1f4c609912a438d445da26ec9e34ac5b6538a
parent4e7c1330689e27556de407d3fdadc65ffff5eb12
ipv6: don't reject link-local nexthop on other interface

48ed7b26faa7 ("ipv6: reject locally assigned nexthop addresses") is too
strict; it rejects following corner-case:

ip -6 route add default via fe80::1:2:3 dev eth1

[ where fe80::1:2:3 is assigned to a local interface, but not eth1 ]

Fix this by restricting search to given device if nh is linklocal.

Joint work with Hannes Frederic Sowa.

Fixes: 48ed7b26faa7 ("ipv6: reject locally assigned nexthop addresses")
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/route.c