diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-01-23 17:17:01 -0500 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-01-23 17:17:01 -0500 |
| commit | 3332f4f0fbb5179b54a3752b6df02cb697dc1f8b (patch) | |
| tree | 8841c48c04bc2c4cb5b174102a4b03380ecbb25e /zebra/zebra_rib.c | |
| parent | be3a8fa8f8ee34a2b15eac517f7eb7bad7978d1f (diff) | |
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 <sharpd@cumulusnetworks.com>
Diffstat (limited to 'zebra/zebra_rib.c')
| -rw-r--r-- | zebra/zebra_rib.c | 3 |
1 files changed, 2 insertions, 1 deletions
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; } |
