diff --git a/lib/if.c b/lib/if.c
index 524869b..db10bc0 100644
--- a/lib/if.c
+++ b/lib/if.c
@@ -708,30 +708,6 @@
   return match;
 }
 
-/* Check the connected information is PtP style or not.  */
-int
-ifc_pointopoint (struct connected *ifc)
-{
-  struct prefix *p;
-  int ptp = 0;
-
-  /* When interface has PtP flag.  */
-  if (if_is_pointopoint (ifc->ifp))
-    return 1;
-
-  /* RFC3021 PtP check.  */
-  p = ifc->address;
-
-  if (p->family == AF_INET)
-    ptp = (p->prefixlen >= IPV4_MAX_PREFIXLEN - 1);
-#ifdef HAVE_IPV6
-  if (p->family == AF_INET6)
-    ptp = (p->prefixlen >= IPV6_MAX_PREFIXLEN - 1);
-#endif /* HAVE_IPV6 */
-
-  return ptp;
-}
-
 #ifndef HAVE_IF_NAMETOINDEX
 unsigned int
 if_nametoindex (const char *name)
diff --git a/lib/if.h b/lib/if.h
index 3fbeed9..708853b 100644
--- a/lib/if.h
+++ b/lib/if.h
@@ -207,7 +207,6 @@
 void connected_add (struct interface *, struct connected *);
 struct connected  *connected_delete_by_prefix (struct interface *, struct prefix *);
 struct connected  *connected_lookup_address (struct interface *, struct in_addr);
-int ifc_pointopoint (struct connected *);
 
 #ifndef HAVE_IF_NAMETOINDEX
 unsigned int if_nametoindex (const char *);
