From aa80826e4af4e6e0a6de5604ab5ce7991f2a8b4e Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Sun, 7 Feb 2010 09:49:34 +0100 Subject: Unnumbered OSPF interfaces should be always in the point-to-point mode. --- proto/ospf/iface.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'proto/ospf') diff --git a/proto/ospf/iface.c b/proto/ospf/iface.c index b90ab9f..927b8da 100644 --- a/proto/ospf/iface.c +++ b/proto/ospf/iface.c @@ -355,6 +355,9 @@ ospf_open_mc_socket(struct ospf_iface *ifa) u8 ospf_iface_clasify(struct iface * ifa) { + if (ifa->addr->flags & IA_UNNUMBERED) + return OSPF_IT_PTP; + if ((ifa->flags & (IF_MULTIACCESS | IF_MULTICAST)) == (IF_MULTIACCESS | IF_MULTICAST)) return OSPF_IT_BCAST; @@ -458,6 +461,16 @@ ospf_iface_new(struct proto_ospf *po, struct iface *iface, else ifa->type = ip->type; +#ifdef OSPFv2 + if ((ifa->type != OSPF_IT_PTP) && (ifa->type != OSPF_IT_VLINK) && + (ifa->iface->addr->flags & IA_UNNUMBERED)) + { + log(L_WARN "%s: Missing proper IP prefix on interface %s, forcing point-to-point mode", + p->name, iface->name); + ifa->type = OSPF_IT_PTP; + } +#endif + init_list(&ifa->neigh_list); init_list(&ifa->nbma_list); -- cgit v1.2.3