summaryrefslogtreecommitdiff
path: root/pimd/pimd.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-06-30 10:32:45 -0400
committerDonald Sharp <sharpd@cumulusnetworks.com>2017-06-30 10:32:45 -0400
commitda13682c884d14d0f82580a94e68a69f104ba897 (patch)
treea5e6cd48af4e32b53f8ac428be490abcaee9681c /pimd/pimd.c
parenta2f9eb822f6fcec3896e8d9364dff7108240b61e (diff)
pimd: Fix zclient cleanup on shutdown
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pimd.c')
-rw-r--r--pimd/pimd.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/pimd/pimd.c b/pimd/pimd.c
index c31d2a99a1..ec1fe5b6d0 100644
--- a/pimd/pimd.c
+++ b/pimd/pimd.c
@@ -313,6 +313,8 @@ void pim_init()
void pim_terminate()
{
+ struct zclient *zclient;
+
pim_free();
/* reverse prefix_list_init */
@@ -321,4 +323,11 @@ void pim_terminate()
prefix_list_reset ();
pim_vrf_terminate ();
+
+ zclient = pim_zebra_zclient_get ();
+ if (zclient)
+ {
+ zclient_stop (zclient);
+ zclient_free (zclient);
+ }
}