zebra: when override flag is set, do not forget to update nht

this flag can be used when one routing daemon wants to force his route
to be injected prioritary with other routes, including selected routes.
for that, do not forget to update the new_selected pointer in the zebra
nexthop tracking algorithm.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
This commit is contained in:
Philippe Guibert 2020-02-19 17:27:06 +01:00
parent d0bfe25dea
commit 34b2ac58c5

View File

@ -669,7 +669,8 @@ zebra_rnh_resolve_nexthop_entry(struct zebra_vrf *zvrf, afi_t afi,
zebra_route_string(re->type));
continue;
}
if (!CHECK_FLAG(re->flags, ZEBRA_FLAG_SELECTED)) {
if (!CHECK_FLAG(re->flags, ZEBRA_FLAG_SELECTED) &&
!CHECK_FLAG(re->flags, ZEBRA_FLAG_FIB_OVERRIDE)) {
if (IS_ZEBRA_DEBUG_NHT_DETAILED)
zlog_debug(
"\tRoute Entry %s !selected",