]> git.puffer.fish Git - mirror/frr.git/commit
lib, zebra: Check for not being a blackhole route 15815/head
authorDonald Sharp <sharpd@nvidia.com>
Fri, 19 Apr 2024 16:13:32 +0000 (12:13 -0400)
committerDonald Sharp <sharpd@nvidia.com>
Mon, 22 Apr 2024 14:44:55 +0000 (10:44 -0400)
commit29c1ff446e581fc403d155fd1d00b7c944cba56a
treea02d61ed9cee361aaaab6ee59937a6581bb1ffe1
parent7f7bcb1ffa636318659abb16c7690d9875577ef9
lib, zebra: Check for not being a blackhole route

In zebra_interface_nhg_reinstall zebra is checking that the
nhg is a singleton and not a blackhole nhg.  This was originally
done with checking that the nexthop is a NEXTHOP_TYPE_IFINDEX,
NEXTHOP_TYPE_IPV4_IFINDEX and NEXTHOP_TYPE_IPV6_IFINDEX.  This
was excluding NEXTHOP_TYPE_IPV4 and NEXTHOP_TYPE_IPV6.  These
were both possible to be received and maintained from the upper
level protocol for when a route is being recursively resolved.
If we have gotten to this point in zebra_interface_nhg_reinstall
the nexthop group has already been installed at least once
and we *know* that it is actually a valid nexthop.  What the
test is really trying to do is ensure that we are not reinstalling
a blackhole nexthop group( Which is not possible to even be
here by the way, but safety first! ).  So let's change
to test for that instead.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
lib/nexthop.c
lib/nexthop.h
zebra/zebra_nhg.c