]> git.itanic.dy.fi Git - linux-stable/commit
net: ipv6: Compare lwstate in detecting duplicate nexthops
authorDavid Ahern <dsahern@gmail.com>
Wed, 5 Jul 2017 20:41:46 +0000 (14:41 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Jul 2017 05:00:07 +0000 (07:00 +0200)
commit04e0f78f877dd21ef3114c1d18281d7daaa07e59
tree3c0c6564e076e2dbae9864fcbfe2ae8509645859
parent5269faa455c680f4f1e44e45ef41dae0878c45d4
net: ipv6: Compare lwstate in detecting duplicate nexthops

[ Upstream commit f06b7549b79e29a672336d4e134524373fb7a232 ]

Lennert reported a failure to add different mpls encaps in a multipath
route:

  $ ip -6 route add 1234::/16 \
        nexthop encap mpls 10 via fe80::1 dev ens3 \
        nexthop encap mpls 20 via fe80::1 dev ens3
  RTNETLINK answers: File exists

The problem is that the duplicate nexthop detection does not compare
lwtunnel configuration. Add it.

Fixes: 19e42e451506 ("ipv6: support for fib route lwtunnel encap attributes")
Signed-off-by: David Ahern <dsahern@gmail.com>
Reported-by: João Taveira Araújo <joao.taveira@gmail.com>
Reported-by: Lennert Buytenhek <buytenh@wantstofly.org>
Acked-by: Roopa Prabhu <roopa@cumulusnetworks.com>
Tested-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/net/ip6_route.h
net/ipv6/ip6_fib.c
net/ipv6/route.c