summaryrefslogtreecommitdiffstats
path: root/zebra/zserv.c
diff options
context:
space:
mode:
authorSantosh P K <sapk@vmware.com>2020-02-20 19:50:14 +0100
committerSantosh P K <sapk@vmware.com>2020-02-21 15:26:48 +0100
commit6f4aee61a2e741b8ba6f91b5922ddafafda5b587 (patch)
tree464cda7f3595a74a51d91d8f38de47ea737caf29 /zebra/zserv.c
parentMerge pull request #5842 from qlyoung/fix-test-then-xfree-again (diff)
downloadfrr-6f4aee61a2e741b8ba6f91b5922ddafafda5b587.tar.xz
frr-6f4aee61a2e741b8ba6f91b5922ddafafda5b587.zip
Zebra: Zebra gr dynamic client handling.
When a client connects to zebra with GR capabilities and then restarts, it might disconnect again even before hello is sent leading zebra cores. GR should be supported only for dynamic neighbor who are capable of restarting. Signed-off-by: Santosh P K <sapk@vmware.com>
Diffstat (limited to 'zebra/zserv.c')
-rw-r--r--zebra/zserv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/zebra/zserv.c b/zebra/zserv.c
index 2a5352a1d..299c079df 100644
--- a/zebra/zserv.c
+++ b/zebra/zserv.c
@@ -568,7 +568,7 @@ static void zserv_client_free(struct zserv *client)
close(client->sock);
- if (!client->gr_instance_count) {
+ if (DYNAMIC_CLIENT_GR_DISABLED(client)) {
nroutes = rib_score_proto(client->proto,
client->instance);
zlog_notice(
@@ -610,7 +610,7 @@ static void zserv_client_free(struct zserv *client)
* If any instance are graceful restart enabled,
* client is not deleted
*/
- if (!client->gr_instance_count) {
+ if (DYNAMIC_CLIENT_GR_DISABLED(client)) {
if (IS_ZEBRA_DEBUG_EVENT)
zlog_debug("%s: Deleting client %s", __func__,
zebra_route_string(client->proto));