On 8/26/20 10:48 AM, Ido Schimmel wrote: > From: Ido Schimmel <ido...@nvidia.com> > > Test that an IPv6 route can not use a nexthop group with mixed IPv4 and > IPv6 nexthops, but can use it after replacing the IPv4 nexthops with > IPv6 nexthops. > > Output without previous patch: > > # ./fib_nexthops.sh -t ipv6_fcnal_runtime > > IPv6 functional runtime > ----------------------- > TEST: Route add [ OK ] > TEST: Route delete [ OK ] > TEST: Ping with nexthop [ OK ] > TEST: Ping - multipath [ OK ] > TEST: Ping - blackhole [ OK ] > TEST: Ping - blackhole replaced with gateway [ OK ] > TEST: Ping - gateway replaced by blackhole [ OK ] > TEST: Ping - group with blackhole [ OK ] > TEST: Ping - group blackhole replaced with gateways [ OK ] > TEST: IPv6 route with device only nexthop [ OK ] > TEST: IPv6 multipath route with nexthop mix - dev only + gw [ OK ] > TEST: IPv6 route can not have a v4 gateway [ OK ] > TEST: Nexthop replace - v6 route, v4 nexthop [ OK ] > TEST: Nexthop replace of group entry - v6 route, v4 nexthop [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route using a group after removing v4 gateways [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route using a group after replacing v4 gateways [FAIL] > TEST: Nexthop with default route and rpfilter [ OK ] > TEST: Nexthop with multipath default route and rpfilter [ OK ] > > Tests passed: 21 > Tests failed: 1 > > Output with previous patch: > > # ./fib_nexthops.sh -t ipv6_fcnal_runtime > > IPv6 functional runtime > ----------------------- > TEST: Route add [ OK ] > TEST: Route delete [ OK ] > TEST: Ping with nexthop [ OK ] > TEST: Ping - multipath [ OK ] > TEST: Ping - blackhole [ OK ] > TEST: Ping - blackhole replaced with gateway [ OK ] > TEST: Ping - gateway replaced by blackhole [ OK ] > TEST: Ping - group with blackhole [ OK ] > TEST: Ping - group blackhole replaced with gateways [ OK ] > TEST: IPv6 route with device only nexthop [ OK ] > TEST: IPv6 multipath route with nexthop mix - dev only + gw [ OK ] > TEST: IPv6 route can not have a v4 gateway [ OK ] > TEST: Nexthop replace - v6 route, v4 nexthop [ OK ] > TEST: Nexthop replace of group entry - v6 route, v4 nexthop [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route using a group after removing v4 gateways [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route can not have a group with v4 and v6 gateways [ OK ] > TEST: IPv6 route using a group after replacing v4 gateways [ OK ] > TEST: Nexthop with default route and rpfilter [ OK ] > TEST: Nexthop with multipath default route and rpfilter [ OK ] > > Tests passed: 22 > Tests failed: 0 > > Signed-off-by: Ido Schimmel <ido...@nvidia.com> > --- > tools/testing/selftests/net/fib_nexthops.sh | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/tools/testing/selftests/net/fib_nexthops.sh > b/tools/testing/selftests/net/fib_nexthops.sh > index 06e4f12e838d..b74884d52913 100755 > --- a/tools/testing/selftests/net/fib_nexthops.sh > +++ b/tools/testing/selftests/net/fib_nexthops.sh > @@ -754,6 +754,21 @@ ipv6_fcnal_runtime() > run_cmd "$IP ro replace 2001:db8:101::1/128 nhid 124" > log_test $? 0 "IPv6 route using a group after removing v4 gateways" > > + run_cmd "$IP ro delete 2001:db8:101::1/128" > + run_cmd "$IP nexthop add id 87 via 172.16.1.1 dev veth1" > + run_cmd "$IP nexthop add id 88 via 172.16.1.1 dev veth1" > + run_cmd "$IP nexthop replace id 124 group 86/87/88" > + run_cmd "$IP ro replace 2001:db8:101::1/128 nhid 124" > + log_test $? 2 "IPv6 route can not have a group with v4 and v6 gateways" > + > + run_cmd "$IP nexthop replace id 88 via 2001:db8:92::2 dev veth3" > + run_cmd "$IP ro replace 2001:db8:101::1/128 nhid 124" > + log_test $? 2 "IPv6 route can not have a group with v4 and v6 gateways" > + > + run_cmd "$IP nexthop replace id 87 via 2001:db8:92::2 dev veth3" > + run_cmd "$IP ro replace 2001:db8:101::1/128 nhid 124" > + log_test $? 0 "IPv6 route using a group after replacing v4 gateways" > + > $IP nexthop flush >/dev/null 2>&1 > > # >
Reviewed-by: David Ahern <dsah...@gmail.com>