ospf6d: Have ospf6d cleanup when it terminates normally
A clean exit makes it easier to use memory debuggers.
* ospf6_asbr.c: (ospf6_asbr_terminate) Add a function to do route map
cleanup.
* ospf6_lsa.c: (ospf6_lsa_terminate) Add a function to cleanup the lsa
handler vector.
* ospf6_main.c: (ospf6_exit) Add an function that causes ospf6d to
gracefully exit.
* ospf6_message.c: (ospf6_message_terminate) Add a function that frees
the send and receive buffers.
* ospf6_top.c: (ospf6_delete) Enable the ospf6_delete() function.
Disable ospf6 before freeing everything.
diff --git a/ospf6d/ospf6_message.h b/ospf6d/ospf6_message.h
index ebb6308..c72f0af 100644
--- a/ospf6d/ospf6_message.h
+++ b/ospf6d/ospf6_message.h
@@ -123,6 +123,7 @@
extern void ospf6_lsack_print (struct ospf6_header *);
extern int ospf6_iobuf_size (unsigned int size);
+extern void ospf6_message_terminate (void);
extern int ospf6_receive (struct thread *thread);
extern int ospf6_hello_send (struct thread *thread);