diff --git a/zebra/kernel_null.c b/zebra/kernel_null.c
index 29c7881..4cd43db 100644
--- a/zebra/kernel_null.c
+++ b/zebra/kernel_null.c
@@ -43,10 +43,6 @@
 int kernel_delete_ipv6 (struct prefix *a, struct rib *b) { return 0; }
 #endif
 
-int kernel_delete_ipv6_old (struct prefix_ipv6 *dest, struct in6_addr *gate,
-                            unsigned int index, int flags, int table)
-{ return 0; }
-
 int kernel_add_route (struct prefix_ipv4 *a, struct in_addr *b, int c, int d)
 { return 0; }
 
diff --git a/zebra/rt.h b/zebra/rt.h
index 8bfe5a4..7faa127 100644
--- a/zebra/rt.h
+++ b/zebra/rt.h
@@ -36,8 +36,6 @@
 #ifdef HAVE_IPV6
 extern int kernel_add_ipv6 (struct prefix *, struct rib *);
 extern int kernel_delete_ipv6 (struct prefix *, struct rib *);
-extern int kernel_delete_ipv6_old (struct prefix_ipv6 *dest, struct in6_addr *gate,
-			    	  unsigned int index, int flags, int table);
 
 #endif /* HAVE_IPV6 */
 
diff --git a/zebra/rt_ioctl.c b/zebra/rt_ioctl.c
index e175d1e..553f222 100644
--- a/zebra/rt_ioctl.c
+++ b/zebra/rt_ioctl.c
@@ -517,12 +517,4 @@
 {
   return kernel_ioctl_ipv6_multipath (SIOCDELRT, p, rib, AF_INET6);
 }
-
-/* Delete IPv6 route from the kernel. */
-int
-kernel_delete_ipv6_old (struct prefix_ipv6 *dest, struct in6_addr *gate,
-		    unsigned int index, int flags, int table)
-{
-  return kernel_ioctl_ipv6 (SIOCDELRT, dest, gate, index, flags);
-}
 #endif /* HAVE_IPV6 */
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c
index 12dbd1a..2350070 100644
--- a/zebra/rt_netlink.c
+++ b/zebra/rt_netlink.c
@@ -1855,15 +1855,6 @@
 {
   return netlink_route_multipath (RTM_DELROUTE, p, rib, AF_INET6);
 }
-
-/* Delete IPv6 route from the kernel. */
-int
-kernel_delete_ipv6_old (struct prefix_ipv6 *dest, struct in6_addr *gate,
-                        unsigned int index, int flags, int table)
-{
-  return netlink_route (RTM_DELROUTE, AF_INET6, &dest->prefix,
-                        dest->prefixlen, gate, index, flags, table);
-}
 #endif /* HAVE_IPV6 */
 
 /* Interface address modification. */
diff --git a/zebra/rt_socket.c b/zebra/rt_socket.c
index cde71ef..63470ad 100644
--- a/zebra/rt_socket.c
+++ b/zebra/rt_socket.c
@@ -474,20 +474,4 @@
 
   return route;
 }
-
-/* Delete IPv6 route from the kernel. */
-int
-kernel_delete_ipv6_old (struct prefix_ipv6 *dest, struct in6_addr *gate,
- 		        unsigned int index, int flags, int table)
-{
-  int route;
-
-  if (zserv_privs.change(ZPRIVS_RAISE))
-    zlog (NULL, LOG_ERR, "Can't raise privileges");
-  route = kernel_rtm_ipv6 (RTM_DELETE, dest, gate, index, flags);
-  if (zserv_privs.change(ZPRIVS_LOWER))
-    zlog (NULL, LOG_ERR, "Can't lower privileges");
-
-  return route;
-}
 #endif /* HAVE_IPV6 */
