From: Donald Sharp Date: Thu, 23 Jan 2020 22:17:01 +0000 (-0500) Subject: zebra: Kernel routes w/ AD were not being marked as installed X-Git-Tag: base_7.4~369^2~1 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=3332f4f0fbb5179b54a3752b6df02cb697dc1f8b;p=mirror%2Ffrr.git zebra: Kernel routes w/ AD were not being marked as installed When we are receiving a kernel route, with an admin distance of 255 we are not marking it as installed. This route should be marked as installed. New behavior: K>* 4.5.7.0/24 [255/8192] via 192.168.209.1, enp0s8, 00:10:14 Signed-off-by: Donald Sharp --- diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c index 051d7f5231..0200ef2a5e 100644 --- a/zebra/zebra_rib.c +++ b/zebra/zebra_rib.c @@ -1075,7 +1075,8 @@ static void rib_process(struct route_node *rn) } /* Infinite distance. */ - if (re->distance == DISTANCE_INFINITY) { + if (re->distance == DISTANCE_INFINITY && + re->type != ZEBRA_ROUTE_KERNEL) { UNSET_FLAG(re->status, ROUTE_ENTRY_CHANGED); continue; }