Compiler warnings fixes.
diff --git a/ripngd/ChangeLog b/ripngd/ChangeLog
index 92dbf6f..112aa19 100644
--- a/ripngd/ChangeLog
+++ b/ripngd/ChangeLog
@@ -1,3 +1,9 @@
+2004-09-26 Hasso Tepper <hasso at quagga.net>
+
+	* ripingd.c: Access list hook argument function must have struct
+	  access_list * argument. Solution taken from ripd.
+	* ripngd.c, ripnf_nexthop.c: Fix compiler warnings.
+
 2004-09-23 Hasso Tepper <hasso at quagga.net>
 
 	* *.[c|h]: list -> struct list *, listnode -> struct listnode *.
diff --git a/ripngd/ripng_nexthop.c b/ripngd/ripng_nexthop.c
index 04b13c5..e946dc9 100644
--- a/ripngd/ripng_nexthop.c
+++ b/ripngd/ripng_nexthop.c
@@ -161,7 +161,7 @@
 
       /* A nexthop entry should be at least followed by 1 RTE */
       if (num == (rtemax-1)) {
-	ret = ripng_send_packet (STREAM_DATA (s), stream_get_endp (s),
+	ret = ripng_send_packet ((caddr_t) STREAM_DATA (s), stream_get_endp (s),
 				 to, ifp);
 
         if (ret >= 0 && IS_RIPNG_DEBUG_SEND)
@@ -191,7 +191,7 @@
 			  TAG_OUT(data), METRIC_OUT(data));
 
     if (num == rtemax) {
-      ret = ripng_send_packet (STREAM_DATA (s), stream_get_endp (s),
+      ret = ripng_send_packet ((caddr_t) STREAM_DATA (s), stream_get_endp (s),
 			       to, ifp);
 
       if (ret >= 0 && IS_RIPNG_DEBUG_SEND)
@@ -204,7 +204,7 @@
 
   /* If unwritten RTE exist, flush it. */
   if (num != 0) {
-    ret = ripng_send_packet (STREAM_DATA (s), stream_get_endp (s),
+    ret = ripng_send_packet ((caddr_t) STREAM_DATA (s), stream_get_endp (s),
 			     to, ifp);
 
     if (ret >= 0 && IS_RIPNG_DEBUG_SEND)
diff --git a/ripngd/ripngd.c b/ripngd/ripngd.c
index 874848c..4d7c021 100644
--- a/ripngd/ripngd.c
+++ b/ripngd/ripngd.c
@@ -1585,9 +1585,9 @@
 
   /* Write routing table entry. */
   if (!nexthop)
-    stream_write (s, (caddr_t) &p->prefix, sizeof (struct in6_addr));
+    stream_write (s, (u_char *) &p->prefix, sizeof (struct in6_addr));
   else
-    stream_write (s, (caddr_t) nexthop, sizeof (struct in6_addr));
+    stream_write (s, (u_char *) nexthop, sizeof (struct in6_addr));
   stream_putw (s, tag);
   if (p)
     stream_putc (s, p->prefixlen);
@@ -2813,7 +2813,7 @@
 
 /* Update all interface's distribute list. */
 void
-ripng_distribute_update_all ()
+ripng_distribute_update_all (struct prefix_list *notused)
 {
   struct interface *ifp;
   struct listnode *node;
@@ -2824,6 +2824,12 @@
       ripng_distribute_update_interface (ifp);
     }
 }
+
+void
+ripng_distribute_update_all_wrapper (struct access_list *notused)
+{
+  ripng_distribute_update_all(NULL);
+}
 
 /* delete all the added ripng routes. */
 void
@@ -2985,7 +2991,7 @@
 }
 
 void
-ripng_routemap_update ()
+ripng_routemap_update (char *unused)
 {
   struct interface *ifp;
   struct listnode *node;
@@ -3049,8 +3055,8 @@
 
   /* Access list install. */
   access_list_init ();
-  access_list_add_hook (ripng_distribute_update_all);
-  access_list_delete_hook (ripng_distribute_update_all);
+  access_list_add_hook (ripng_distribute_update_all_wrapper);
+  access_list_delete_hook (ripng_distribute_update_all_wrapper);
 
   /* Prefix list initialize.*/
   prefix_list_init ();