ospfd: export ospf_if_table_lookup() and use it in ospf_network_run_interface()

Makes it possible to run OSPF on multiple PtP interfaces
with the same remote address.

* ospfd/ospf_interface.c: Export ospf_if_table_lookup().
* ospfd/ospf_interface.h: ditto.
* ospfd/ospfd.c: (ospf_network_run_interface) Use ospf_if_table_lookup() to
  determine whether OSPF is already configured for a subnet and interface.

diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
index 08e4100..b86986b 100644
--- a/ospfd/ospfd.c
+++ b/ospfd/ospfd.c
@@ -901,15 +901,12 @@
      then create socket and join multicast group. */
   for (ALL_LIST_ELEMENTS_RO (ifp->connected, cnode, co))
     {
-      struct prefix *addr;
-      
+
       if (CHECK_FLAG(co->flags,ZEBRA_IFA_SECONDARY))
         continue;
 
-      addr = CONNECTED_ID(co);
-
       if (p->family == co->address->family 
-          && ! ospf_if_is_configured (area->ospf, &(addr->u.prefix4))
+	  && ! ospf_if_table_lookup(ifp, co->address)
           && ospf_network_match_iface(co,p))
         {
            struct ospf_interface *oi;