Remove usage of evil list and listnode typedefs.
diff --git a/ospf6d/ChangeLog b/ospf6d/ChangeLog
index 4f64cbc..e7ef97e 100644
--- a/ospf6d/ChangeLog
+++ b/ospf6d/ChangeLog
@@ -1,3 +1,7 @@
+2004-09-23 Hasso Tepper <hasso at quagga.net>
+
+	* *.[c|h]: list -> struct list *, listnode -> struct listnode *.
+
 2004-09-13  Yasuhiro Ohara  <yasu@sfc.wide.ad.jp>
 
 	* ospf6_intra.c, ospf6_route.[ch]: try to fix assertion failure
diff --git a/ospf6d/ospf6_abr.c b/ospf6d/ospf6_abr.c
index 503c13f..52fa590 100644
--- a/ospf6d/ospf6_abr.c
+++ b/ospf6d/ospf6_abr.c
@@ -52,7 +52,7 @@
 int
 ospf6_is_router_abr (struct ospf6 *o)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
   int area_count = 0;
 
@@ -73,7 +73,7 @@
 {
   struct ospf6_area *oa;
   struct ospf6_route *ro;
-  listnode node;
+  struct listnode *node;
 
   for (node = listhead (area->ospf6->area_list); node; nextnode (node))
     {
@@ -111,7 +111,7 @@
   struct ospf6_area *oa;
   struct ospf6_route *ro;
   struct ospf6_lsa *old;
-  listnode node;
+  struct listnode *node;
 
   /* Withdraw all summary prefixes previously originated */
   for (ro = ospf6_route_head (area->summary_prefix); ro;
@@ -470,7 +470,7 @@
 void
 ospf6_abr_originate_summary (struct ospf6_route *route)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
   struct ospf6_route *range = NULL;
 
@@ -656,7 +656,7 @@
 {
   struct ospf6_lsa *lsa;
   struct ospf6_area *oa;
-  listnode node;
+  struct listnode *node;
   u_int16_t type;
 
   type = htons (OSPF6_LSTYPE_INTER_ROUTER);
diff --git a/ospf6d/ospf6_area.c b/ospf6d/ospf6_area.c
index de28cb9..c9d15b8 100644
--- a/ospf6d/ospf6_area.c
+++ b/ospf6d/ospf6_area.c
@@ -175,7 +175,7 @@
 void
 ospf6_area_delete (struct ospf6_area *oa)
 {
-  listnode n;
+  struct listnode *n;
   struct ospf6_interface *oi;
 
   ospf6_route_table_delete (oa->range_table);
@@ -215,7 +215,7 @@
 ospf6_area_lookup (u_int32_t area_id, struct ospf6 *ospf6)
 {
   struct ospf6_area *oa;
-  listnode n;
+  struct listnode *n;
 
   for (n = listhead (ospf6->area_list); n; nextnode (n))
     {
@@ -240,7 +240,7 @@
 void
 ospf6_area_enable (struct ospf6_area *oa)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_interface *oi;
 
   SET_FLAG (oa->flag, OSPF6_AREA_ENABLE);
@@ -255,7 +255,7 @@
 void
 ospf6_area_disable (struct ospf6_area *oa)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_interface *oi;
 
   UNSET_FLAG (oa->flag, OSPF6_AREA_ENABLE);
@@ -271,7 +271,7 @@
 void
 ospf6_area_show (struct vty *vty, struct ospf6_area *oa)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_interface *oi;
 
   vty_out (vty, " Area %s%s", oa->name, VNL);
@@ -410,7 +410,7 @@
 void
 ospf6_area_config_write (struct vty *vty)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
   struct ospf6_route *range;
   char buf[128];
@@ -437,7 +437,7 @@
        "Shortest Path First caculation\n"
        "Show SPF tree\n")
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
   struct ospf6_vertex *root;
   struct ospf6_route *route;
diff --git a/ospf6d/ospf6_area.h b/ospf6d/ospf6_area.h
index 734f030..0cee638 100644
--- a/ospf6d/ospf6_area.h
+++ b/ospf6d/ospf6_area.h
@@ -47,7 +47,7 @@
   struct ospf6_route_table *summary_router;
 
   /* OSPF interface list */
-  list if_list;
+  struct list *if_list;
 
   struct ospf6_lsdb *lsdb;
   struct ospf6_lsdb *lsdb_self;
diff --git a/ospf6d/ospf6_asbr.c b/ospf6d/ospf6_asbr.c
index 032e348..a3728f4 100644
--- a/ospf6d/ospf6_asbr.c
+++ b/ospf6d/ospf6_asbr.c
@@ -444,7 +444,7 @@
   struct prefix prefix_id;
   struct route_node *node;
   char pbuf[64], ibuf[16];
-  listnode lnode;
+  struct listnode *lnode;
   struct ospf6_area *oa;
 
   if (! ospf6_zebra_is_redistribute (type))
@@ -590,7 +590,7 @@
   struct ospf6_lsa *lsa;
   struct prefix prefix_id;
   char pbuf[64], ibuf[16];
-  listnode lnode;
+  struct listnode *lnode;
   struct ospf6_area *oa;
 
   match = ospf6_route_lookup (prefix, ospf6->external_table);
diff --git a/ospf6d/ospf6_flood.c b/ospf6d/ospf6_flood.c
index e9ba52b..acfe28a 100644
--- a/ospf6d/ospf6_flood.c
+++ b/ospf6d/ospf6_flood.c
@@ -245,7 +245,7 @@
 ospf6_flood_interface (struct ospf6_neighbor *from,
                        struct ospf6_lsa *lsa, struct ospf6_interface *oi)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_neighbor *on;
   struct ospf6_lsa *req;
   int retrans_added = 0;
@@ -394,7 +394,7 @@
 ospf6_flood_area (struct ospf6_neighbor *from,
                   struct ospf6_lsa *lsa, struct ospf6_area *oa)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_interface *oi;
 
   for (node = listhead (oa->if_list); node; nextnode (node))
@@ -419,7 +419,7 @@
 ospf6_flood_process (struct ospf6_neighbor *from,
                      struct ospf6_lsa *lsa, struct ospf6 *process)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
 
   for (node = listhead (process->area_list); node; nextnode (node))
@@ -450,7 +450,7 @@
 void
 ospf6_flood_clear_interface (struct ospf6_lsa *lsa, struct ospf6_interface *oi)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_neighbor *on;
   struct ospf6_lsa *rem;
 
@@ -474,7 +474,7 @@
 void
 ospf6_flood_clear_area (struct ospf6_lsa *lsa, struct ospf6_area *oa)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_interface *oi;
 
   for (node = listhead (oa->if_list); node; nextnode (node))
@@ -498,7 +498,7 @@
 void
 ospf6_flood_clear_process (struct ospf6_lsa *lsa, struct ospf6 *process)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
 
   for (node = listhead (process->area_list); node; nextnode (node))
@@ -714,7 +714,7 @@
   struct ospf6_interface *oi;
   struct ospf6_area *oa;
   struct ospf6 *process = NULL;
-  listnode i, j, k;
+  struct listnode *i, *j, *k;
   int count = 0;
 
   if (! OSPF6_LSA_IS_MAXAGE (lsa))
diff --git a/ospf6d/ospf6_interface.c b/ospf6d/ospf6_interface.c
index a8ea1d3..85f908e 100644
--- a/ospf6d/ospf6_interface.c
+++ b/ospf6d/ospf6_interface.c
@@ -165,7 +165,7 @@
 void
 ospf6_interface_delete (struct ospf6_interface *oi)
 {
-  listnode n;
+  struct listnode *n;
   struct ospf6_neighbor *on;
 
   for (n = listhead (oi->neighbor_list); n; nextnode (n))
@@ -213,7 +213,7 @@
 void
 ospf6_interface_disable (struct ospf6_interface *oi)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_neighbor *on;
 
   SET_FLAG (oi->flag, OSPF6_INTERFACE_DISABLE);
@@ -237,7 +237,7 @@
 static struct in6_addr *
 ospf6_interface_get_linklocal_address (struct interface *ifp)
 {
-  listnode n;
+  struct listnode *n;
   struct connected *c;
   struct in6_addr *l = (struct in6_addr *) NULL;
 
@@ -332,7 +332,7 @@
   struct ospf6_interface *oi;
   struct ospf6_route *route;
   struct connected *c;
-  listnode i;
+  struct listnode *i;
 
   oi = (struct ospf6_interface *) ifp->info;
   if (oi == NULL)
@@ -512,7 +512,7 @@
 static u_char
 dr_election (struct ospf6_interface *oi)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_neighbor *on, *drouter, *bdrouter, myself;
   struct ospf6_neighbor *best_drouter, *best_bdrouter;
   u_char next_state = 0;
@@ -738,7 +738,7 @@
 interface_down (struct thread *thread)
 {
   struct ospf6_interface *oi;
-  listnode n;
+  struct listnode *n;
   struct ospf6_neighbor *on;
 
   oi = (struct ospf6_interface *) THREAD_ARG (thread);
@@ -772,7 +772,7 @@
   struct ospf6_interface *oi;
   struct connected *c;
   struct prefix *p;
-  listnode i;
+  struct listnode *i;
   char strbuf[64], drouter[32], bdrouter[32];
   char *updown[3] = {"down", "up", NULL};
   char *type;
@@ -895,7 +895,7 @@
        )
 {
   struct interface *ifp;
-  listnode i;
+  struct listnode *i;
 
   if (argc)
     {
@@ -1002,7 +1002,7 @@
        "Display connected prefixes to advertise\n"
        )
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_interface *oi;
   struct interface *ifp;
 
@@ -1059,7 +1059,7 @@
   struct ospf6_interface *oi;
   struct interface *ifp;
   int ifmtu, iobuflen;
-  listnode node;
+  struct listnode *node;
   struct ospf6_neighbor *on;
 
   ifp = (struct interface *) vty->index;
@@ -1120,7 +1120,7 @@
   struct ospf6_interface *oi;
   struct interface *ifp;
   int iobuflen;
-  listnode node;
+  struct listnode *node;
   struct ospf6_neighbor *on;
 
   ifp = (struct interface *) vty->index;
@@ -1360,7 +1360,7 @@
 {
   struct ospf6_interface *oi;
   struct interface *ifp;
-  listnode node;
+  struct listnode *node;
   struct ospf6_neighbor *on;
 
   ifp = (struct interface *) vty->index;
@@ -1491,7 +1491,7 @@
 int
 config_write_ospf6_interface (struct vty *vty)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_interface *oi;
   struct interface *ifp;
 
diff --git a/ospf6d/ospf6_interface.h b/ospf6d/ospf6_interface.h
index be3007d..d28b310 100644
--- a/ospf6d/ospf6_interface.h
+++ b/ospf6d/ospf6_interface.h
@@ -43,7 +43,7 @@
   struct ospf6_area *area;
 
   /* list of ospf6 neighbor */
-  list neighbor_list;
+  struct list *neighbor_list;
 
   /* linklocal address of this I/F */
   struct in6_addr *linklocal_addr;
diff --git a/ospf6d/ospf6_intra.c b/ospf6d/ospf6_intra.c
index 4452e62..fd208fd 100644
--- a/ospf6d/ospf6_intra.c
+++ b/ospf6d/ospf6_intra.c
@@ -109,7 +109,7 @@
   struct ospf6_lsa *lsa;
 
   u_int32_t link_state_id = 0;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6_interface *oi;
   struct ospf6_neighbor *on, *drouter = NULL;
   struct ospf6_router_lsa *router_lsa;
@@ -354,7 +354,7 @@
   struct ospf6_network_lsdesc *lsdesc;
   struct ospf6_neighbor *on;
   struct ospf6_link_lsa *link_lsa;
-  listnode i;
+  struct listnode *i;
   u_int16_t type;
 
   oi = (struct ospf6_interface *) THREAD_ARG (thread);
@@ -687,7 +687,7 @@
   struct ospf6_neighbor *on;
   struct ospf6_route *route;
   struct ospf6_prefix *op;
-  listnode i, j;
+  struct listnode *i, *j;
   int full_count = 0;
   unsigned short prefix_num = 0;
   char buf[BUFSIZ];
@@ -839,7 +839,7 @@
   struct ospf6_neighbor *on;
   struct ospf6_route *route;
   struct ospf6_prefix *op;
-  listnode i;
+  struct listnode *i;
   int full_count = 0;
   unsigned short prefix_num = 0;
   struct ospf6_route_table *route_advertise;
diff --git a/ospf6d/ospf6_message.c b/ospf6d/ospf6_message.c
index ae699b9..d4a60dd 100644
--- a/ospf6d/ospf6_message.c
+++ b/ospf6d/ospf6_message.c
@@ -1387,7 +1387,7 @@
   struct ospf6_header *oh;
   struct ospf6_hello *hello;
   char *p;
-  listnode node;
+  struct listnode *node;
   struct ospf6_neighbor *on;
 
   oi = (struct ospf6_interface *) THREAD_ARG (thread);
diff --git a/ospf6d/ospf6_neighbor.c b/ospf6d/ospf6_neighbor.c
index ad4261f..752b3fc 100644
--- a/ospf6d/ospf6_neighbor.c
+++ b/ospf6d/ospf6_neighbor.c
@@ -58,7 +58,7 @@
 ospf6_neighbor_lookup (u_int32_t router_id,
                        struct ospf6_interface *oi)
 {
-  listnode n;
+  struct listnode *n;
   struct ospf6_neighbor *on;
 
   for (n = listhead (oi->neighbor_list); n; nextnode (n))
@@ -772,7 +772,7 @@
   struct ospf6_neighbor *on;
   struct ospf6_interface *oi;
   struct ospf6_area *oa;
-  listnode i, j, k;
+  struct listnode *i, *j, *k;
   void (*showfunc) (struct vty *, struct ospf6_neighbor *);
 
   OSPF6_CMD_CHECK_RUNNING ();
@@ -835,7 +835,7 @@
   struct ospf6_neighbor *on;
   struct ospf6_interface *oi;
   struct ospf6_area *oa;
-  listnode i, j, k;
+  struct listnode *i, *j, *k;
   void (*showfunc) (struct vty *, struct ospf6_neighbor *);
   u_int32_t router_id;
 
diff --git a/ospf6d/ospf6_spf.c b/ospf6d/ospf6_spf.c
index 6d4237a..79539b2 100644
--- a/ospf6d/ospf6_spf.c
+++ b/ospf6d/ospf6_spf.c
@@ -281,7 +281,7 @@
   struct ospf6_route *route;
   int i, j;
   struct ospf6_vertex *prev, *w;
-  listnode node;
+  struct listnode *node;
 
   if (IS_OSPF6_DEBUG_SPF (PROCESS))
     zlog_info ("SPF install %s hops %d cost %d",
@@ -530,7 +530,7 @@
 ospf6_spf_display_subtree (struct vty *vty, char *prefix, int rest,
                            struct ospf6_vertex *v)
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_vertex *c;
   char *next_prefix;
   int len;
diff --git a/ospf6d/ospf6_spf.h b/ospf6d/ospf6_spf.h
index 64f5ed8..6a6424e 100644
--- a/ospf6d/ospf6_spf.h
+++ b/ospf6d/ospf6_spf.h
@@ -68,7 +68,7 @@
 
   /* For tree display */
   struct ospf6_vertex *parent;
-  list child_list;
+  struct list *child_list;
 };
 
 #define OSPF6_VERTEX_TYPE_ROUTER  0x01
diff --git a/ospf6d/ospf6_top.c b/ospf6d/ospf6_top.c
index cc4356c..712b337 100644
--- a/ospf6d/ospf6_top.c
+++ b/ospf6d/ospf6_top.c
@@ -143,7 +143,7 @@
 void
 ospf6_delete (struct ospf6 *o)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_area *oa;
 
   for (i = listhead (o->area_list); i; nextnode (i))
@@ -167,7 +167,7 @@
 void
 ospf6_enable (struct ospf6 *o)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_area *oa;
 
   if (CHECK_FLAG (o->flag, OSPF6_DISABLED))
@@ -184,7 +184,7 @@
 void
 ospf6_disable (struct ospf6 *o)
 {
-  listnode i;
+  struct listnode *i;
   struct ospf6_area *oa;
 
   if (! CHECK_FLAG (o->flag, OSPF6_DISABLED))
@@ -209,7 +209,7 @@
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
   struct ospf6_neighbor *on;
-  listnode i, j, k;
+  struct listnode *i, *j, *k;
 
   o->maxage_remover = (struct thread *) NULL;
 
@@ -437,7 +437,7 @@
 void
 ospf6_show (struct vty *vty, struct ospf6 *o)
 {
-  listnode n;
+  struct listnode *n;
   struct ospf6_area *oa;
   char router_id[16], duration[32];
   struct timeval now, running;
@@ -608,7 +608,7 @@
 config_write_ospf6 (struct vty *vty)
 {
   char router_id[16];
-  listnode j, k;
+  struct listnode *j, *k;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
 
diff --git a/ospf6d/ospf6_top.h b/ospf6d/ospf6_top.h
index d831d94..9fd0395 100644
--- a/ospf6d/ospf6_top.h
+++ b/ospf6d/ospf6_top.h
@@ -34,7 +34,7 @@
   struct timeval starttime;
 
   /* list of areas */
-  list area_list;
+  struct list *area_list;
 
   /* AS scope link state database */
   struct ospf6_lsdb *lsdb;
diff --git a/ospf6d/ospf6d.c b/ospf6d/ospf6d.c
index 4a722e4..e94a036 100644
--- a/ospf6d/ospf6d.c
+++ b/ospf6d/ospf6d.c
@@ -174,7 +174,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -242,7 +242,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -330,7 +330,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -429,7 +429,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -538,7 +538,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -697,7 +697,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -847,7 +847,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -933,7 +933,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1029,7 +1029,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1154,7 +1154,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1266,7 +1266,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1339,7 +1339,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1444,7 +1444,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1560,7 +1560,7 @@
       )
 {
   int level;
-  listnode i, j;
+  struct listnode *i, *j;
   struct ospf6 *o = ospf6;
   struct ospf6_area *oa;
   struct ospf6_interface *oi;
@@ -1723,7 +1723,7 @@
        "Display linkstate routing table\n"
       )
 {
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
 
   for (node = listhead (ospf6->area_list); node; nextnode (node))
@@ -1773,7 +1773,7 @@
 {
   char *sargv[CMD_ARGC_MAX];
   int i, sargc;
-  listnode node;
+  struct listnode *node;
   struct ospf6_area *oa;
 
   /* copy argv to sargv and then append "detail" */