From: Ondrej Zajicek Date: Wed, 20 Jul 2011 21:46:03 +0000 (+0200) Subject: Fixes broken multi-area OSPF. X-Git-Tag: v1.3.3~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9008579b97239564e1dcac855cf726fa9ab7dabd;p=thirdparty%2Fbird.git Fixes broken multi-area OSPF. --- diff --git a/proto/ospf/rt.c b/proto/ospf/rt.c index 9e3f9d7aa..78b1ebecd 100644 --- a/proto/ospf/rt.c +++ b/proto/ospf/rt.c @@ -213,7 +213,7 @@ rt_pos_to_ifa(struct ospf_area *oa, int pos) { struct ospf_iface *ifa; WALK_LIST(ifa, oa->po->iface_list) - if (pos >= ifa->rt_pos_beg && pos < ifa->rt_pos_end) + if (ifa->oa == oa && pos >= ifa->rt_pos_beg && pos < ifa->rt_pos_end) return ifa; return NULL; } @@ -224,7 +224,7 @@ px_pos_to_ifa(struct ospf_area *oa, int pos) { struct ospf_iface *ifa; WALK_LIST(ifa, oa->po->iface_list) - if (pos >= ifa->px_pos_beg && pos < ifa->px_pos_end) + if (ifa->oa == oa && pos >= ifa->px_pos_beg && pos < ifa->px_pos_end) return ifa; return NULL; }