]> git.puffer.fish Git - mirror/frr.git/commitdiff
zebra: On route install/update failure correctly indicate in rib
authorDonald Sharp <sharpd@cumulusnetworks.com>
Sat, 9 Feb 2019 15:51:33 +0000 (10:51 -0500)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 27 Mar 2019 20:19:28 +0000 (16:19 -0400)
When we get a route install failure from the kernel, actually
indicate in the rib the status of the routes.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
zebra/zebra_rib.c

index 77cb38855dc9730877c5dd1fecb6bad22d7c45ec..aaf9c40271323b90cba8a3435c8390d78dfd75a9 100644 (file)
@@ -2010,9 +2010,10 @@ static void rib_process_result(struct zebra_dplane_ctx *ctx)
                        zsend_route_notify_owner_ctx(ctx, ZAPI_ROUTE_INSTALLED);
 
                } else {
-                       if (re)
+                       if (re) {
                                SET_FLAG(re->status, ROUTE_ENTRY_FAILED);
-                       if (old_re)
+                               UNSET_FLAG(re->status, ROUTE_ENTRY_INSTALLED);
+                       } if (old_re)
                                SET_FLAG(old_re->status, ROUTE_ENTRY_FAILED);
                        if (re)
                                zsend_route_notify_owner(re, dest_pfx,