]> git.puffer.fish Git - matthieu/frr.git/commitdiff
isisd: Fix zclient cleanup on shutdown
authorDonald Sharp <sharpd@cumulusnetworks.com>
Fri, 30 Jun 2017 14:31:09 +0000 (10:31 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Fri, 30 Jun 2017 14:31:09 +0000 (10:31 -0400)
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
isisd/isis_main.c
isisd/isis_zebra.c
isisd/isis_zebra.h

index 58070c7f2ad1bad7a22f310793277696f879b06e..674592f46b4243ed0db8ed152c296a85cd85328d 100644 (file)
@@ -101,6 +101,7 @@ void sigusr1(void);
 static __attribute__((__noreturn__)) void
 terminate (int i)
 {
+  isis_zebra_stop ();
   exit (i);
 }
 
index 0009dd5e27fb593df9f96737cf91c7d407d83d41..af77250a01ec9883ccf09e9fca04c45b37aef27b 100644 (file)
@@ -720,3 +720,10 @@ isis_zebra_init (struct thread_master *master)
 
   return;
 }
+
+void
+isis_zebra_stop (void)
+{
+  zclient_stop (zclient);
+  zclient_free (zclient);
+}
index 621c32c3636da9e2660538756eb9e690d46935f1..82d5a48d3e04383161249bded203c3bb6f65717c 100644 (file)
@@ -25,6 +25,8 @@
 extern struct zclient *zclient;
 
 void isis_zebra_init(struct thread_master *);
+void isis_zebra_stop(void);
+
 void isis_zebra_route_update (struct prefix *prefix,
                              struct isis_route_info *route_info);
 int isis_distribute_list_update (int routetype);