summaryrefslogtreecommitdiffstats
path: root/zebra/zserv.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2018-03-16 02:06:44 +0100
committerDonald Sharp <sharpd@cumulusnetworks.com>2018-03-16 15:17:41 +0100
commite69aa084193bcadc7a48c99c381741e8ff307658 (patch)
tree1058ac30ee80d864921b7c5543a41b47a1f3a31c /zebra/zserv.c
parentMerge pull request #1885 from msablic/pim_mtrace_client (diff)
downloadfrr-e69aa084193bcadc7a48c99c381741e8ff307658.tar.xz
frr-e69aa084193bcadc7a48c99c381741e8ff307658.zip
zebra: Allow for deletion of rules when the originator goes away
When zebra detects that the originator has dissapeared delete all rules associated with that client. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to '')
-rw-r--r--zebra/zserv.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/zebra/zserv.c b/zebra/zserv.c
index 57b1be4b8..5a903f051 100644
--- a/zebra/zserv.c
+++ b/zebra/zserv.c
@@ -2631,6 +2631,9 @@ static void zebra_client_free(struct zserv *client)
/* Send client de-registration to BFD */
zebra_ptm_bfd_client_deregister(client->proto);
+ /* Cleanup any rules installed from this client */
+ zebra_pbr_client_close_cleanup(client->sock);
+
/* Cleanup any registered nexthops - across all VRFs. */
zebra_client_close_cleanup_rnh(client);