diff --git a/ripngd/ChangeLog b/ripngd/ChangeLog
index 059ee75..6b05f3d 100644
--- a/ripngd/ChangeLog
+++ b/ripngd/ChangeLog
@@ -1,3 +1,8 @@
+2004-07-23  Hasso Tepper  <hasso@estpak.ee>
+
+	* ripng_interface.c, ripng_nexthop.c: use ifp->mtu6 instead of
+	  ifp->mtu.
+
 2004-07-01  Greg Troxel  <gdt@fnord.ir.bbn.com>
 
 	* ripng_interface.c (ripng_multicast_join): Use privs to do join,
diff --git a/ripngd/ripng_interface.c b/ripngd/ripng_interface.c
index d4d1e64..92067a7 100644
--- a/ripngd/ripng_interface.c
+++ b/ripngd/ripng_interface.c
@@ -166,8 +166,8 @@
   for (node = listhead (iflist); node; nextnode (node))
     {
       ifp = getdata (node);
-      if (mtu < ifp->mtu)
-	mtu = ifp->mtu;
+      if (mtu < ifp->mtu6)
+	mtu = ifp->mtu6;
     }
   return mtu;
 }
@@ -243,7 +243,7 @@
 
   if (IS_RIPNG_DEBUG_ZEBRA)
     zlog_info ("interface up %s index %d flags %ld metric %d mtu %d",
-	       ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu);
+	       ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu6);
 
   /* Check if this interface is RIPng enabled or not. */
   ripng_enable_apply (ifp);
@@ -276,7 +276,7 @@
 
   if (IS_RIPNG_DEBUG_ZEBRA)
     zlog_info ("interface down %s index %d flags %ld metric %d mtu %d",
-	       ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu);
+	       ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu6);
 
   return 0;
 }
@@ -291,7 +291,7 @@
 
   if (IS_RIPNG_DEBUG_ZEBRA)
     zlog_info ("RIPng interface add %s index %d flags %ld metric %d mtu %d",
-	       ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu);
+	       ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu6);
 
   /* Check is this interface is RIP enabled or not.*/
   ripng_enable_apply (ifp);
@@ -324,7 +324,7 @@
   }
 
   zlog_info("interface delete %s index %d flags %ld metric %d mtu %d",
-            ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu);
+            ifp->name, ifp->ifindex, ifp->flags, ifp->metric, ifp->mtu6);
 
   /* To support pseudo interface do not free interface structure.  */
   /* if_delete(ifp); */
diff --git a/ripngd/ripng_nexthop.c b/ripngd/ripng_nexthop.c
index 2c5d45c..04b13c5 100644
--- a/ripngd/ripng_nexthop.c
+++ b/ripngd/ripng_nexthop.c
@@ -144,7 +144,7 @@
   stream_reset (s);
   num = 0;
 
-  mtu = ifp->mtu;
+  mtu = ifp->mtu6;
   if (mtu < 0)
     mtu = IFMINMTU;
 
