]> git.puffer.fish Git - mirror/frr.git/commitdiff
zebra: Ignore non GR-aware zclient handling for BGP 13780/head
authorDonatas Abraitis <donatas@opensourcerouting.org>
Mon, 19 Jun 2023 15:35:52 +0000 (18:35 +0300)
committerDonatas Abraitis <donatas@opensourcerouting.org>
Tue, 20 Jun 2023 17:50:40 +0000 (20:50 +0300)
This is for synchronous client (label/table manager) - aka session_id == 1.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
zebra/zserv.c

index 3170da5193fa37f8abf27ac8cfea3b79d0645dc4..85e1edeca0693fb60a18267eba61cefe4e3de582 100644 (file)
@@ -587,6 +587,13 @@ static void zserv_client_free(struct zserv *client)
 
                close(client->sock);
 
+               /* If this is a synchronous BGP Zebra client for label/table
+                * manager, then ignore it. It's not GR-aware, and causes GR to
+                * be skipped for the session_id == 0 (asynchronous).
+                */
+               if (client->proto == ZEBRA_ROUTE_BGP && client->session_id == 1)
+                       return;
+
                if (DYNAMIC_CLIENT_GR_DISABLED(client)) {
                        zebra_mpls_client_cleanup_vrf_label(client->proto);