From: Paul Jakma Date: Thu, 30 Mar 2006 14:20:00 +0000 (+0000) Subject: [ospfd] ignore loopbacks for received interface validation X-Git-Tag: frr-2.0-rc1~2744 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=1a8ee0ec18ac280fda9362259d362805ce62be7d;p=mirror%2Ffrr.git [ospfd] ignore loopbacks for received interface validation 2006-03-25 Paul Jakma * ospf_interface.c: (ospf_if_lookup_recv_if) Ignore loopbacks, we can never ever receive packets on those. Should fix case where CARP is run with address in same subnet as real interface. Problem report and diagnosis thanks to: Landon Fuller . However, ospf_read() still can't deal deterministically with multiple interfaces in same subnet. --- diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog index 9f17a3a4fc..e5aa0660d3 100644 --- a/ospfd/ChangeLog +++ b/ospfd/ChangeLog @@ -1,3 +1,13 @@ +2006-03-25 Paul Jakma + + * ospf_interface.c: (ospf_if_lookup_recv_if) Ignore loopbacks, + we can never ever receive packets on those. Should fix + case where CARP is run with address in same subnet as real + interface. Problem report and diagnosis thanks to: + Landon Fuller . + However, ospf_read() still can't deal deterministically with + multiple interfaces in same subnet. + 2006-03-23 Steve Lawson * ospf_lsa.c: (ospf_lsa_install) Fix incorrect byte-order diff --git a/ospfd/ospf_interface.c b/ospfd/ospf_interface.c index 82c4baee91..8df0280a9a 100644 --- a/ospfd/ospf_interface.c +++ b/ospfd/ospf_interface.c @@ -474,6 +474,9 @@ ospf_if_lookup_recv_if (struct ospf *ospf, struct in_addr src) if (oi->type == OSPF_IFTYPE_VIRTUALLINK) continue; + if (if_is_loopback (oi->ifp)) + continue; + if ((oi->type == OSPF_IFTYPE_POINTOPOINT) && CONNECTED_DEST_HOST(oi->connected)) {