diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog
index e3efeb1..3adaeaf 100644
--- a/ospfd/ChangeLog
+++ b/ospfd/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-04 Paul Jakma <paul@dishone.st>
+
+	* ospfd.c: (ospf_network_match_iface) revert to previous network
+          statement match behaviour.
+
 2004-11-02 Paul Jakma <paul@dishone.st>
 
 	* ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
index 054c331..34a36ea 100644
--- a/ospfd/ospfd.c
+++ b/ospfd/ospfd.c
@@ -686,17 +686,31 @@
    *   PtP special case: network specified == iface peer addr -> ospf
    */
 
-  /* For PtP, match if peer address matches network address exactly
-   * in situations where the peer address is available and the prefix
-   * length is 32 (i.e. a dedicated subnet has not been assigned).
-   * This is not a test for falling within the prefix.  This
+  /* For PtP, match if peer address matches network address exactly.
+   * This can be addr/32 or addr/p for p < 32, but the addr must match
+   * exactly; this is not a test for falling within the prefix.  This
    * test is solely for compatibility with zebra.
-   *
-   * If not PtP, accept if the address is within the prefix.
    */
-  return CONNECTED_POINTOPOINT_HOST(co) ?
-	 IPV4_ADDR_SAME ( &(co->destination->u.prefix4), &(net->u.prefix4)) :
-	 prefix_match (net, co->address);
+  if (if_is_pointopoint (co->ifp) && co->destination &&
+      IPV4_ADDR_SAME ( &(co->destination->u.prefix4), &(net->u.prefix4)))
+    return 1;
+
+#if 0
+  /* Decline to accept PtP if dst address does not match the
+   * prefix. (ifdefed out because this is a workaround, not the
+   * desired behavior.) */
+  if (if_is_pointopoint (co->ifp) &&
+      ! prefix_match (net, co->destination))
+    return 0;
+#endif
+
+  /* If the address is within the prefix, accept.  Note that this
+   * applies to PtP as well as other types.
+   */
+  if (prefix_match (net, co->address))
+    return 1;
+
+  return 0;			/* no match */
 }
 
 void
