From 3fb9de74bbd3de3a264c20b1b486f9853f908c79 Mon Sep 17 00:00:00 2001 From: gdt Date: Thu, 9 Dec 2004 16:30:04 +0000 Subject: * ospf_apiserver.c (ospf_apiserver_term): Obtain struct ospf_apiserver * from listnode. Remove unused variables. Follows suggestion from Jay Fenlason. --- ospfd/ospf_apiserver.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'ospfd/ospf_apiserver.c') diff --git a/ospfd/ospf_apiserver.c b/ospfd/ospf_apiserver.c index 07b8f211..89af2a36 100644 --- a/ospfd/ospf_apiserver.c +++ b/ospfd/ospf_apiserver.c @@ -180,20 +180,17 @@ out: void ospf_apiserver_term (void) { - struct listnode *node; struct ospf_apiserver *apiserv; /* Unregister wildcard [0/0] type */ ospf_delete_opaque_functab (0 /* all LSAs */, 0 /* all opaque types */); - /* Free all client instances */ - while ( (node = listhead (apiserver_list)) != NULL) - /* - * XXX: this is just plain odd/wrong. Is there a missing - * apiserv = (struct ospf_apiserver *) node; - * ? - */ + /* + * Free all client instances. ospf_apiserver_free removes the node + * from the list, so we examine the head of the list anew each time. + */ + while ( (apiserv = getdata (listhead (apiserver_list))) != NULL) ospf_apiserver_free (apiserv); /* Free client list itself */ -- cgit v1.2.1