From 05e85fa947f3775ac7417f5aa7111d056971bb18 Mon Sep 17 00:00:00 2001 From: paul Date: Fri, 12 Nov 2004 10:52:19 +0000 Subject: 2004-11-12 Paul Jakma * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to ignore stub area summary default. Even so it seems a strange check, add a comment to that effect. --- ospfd/ChangeLog | 6 ++++++ ospfd/ospf_ia.c | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) (limited to 'ospfd') diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog index 3adaeaf7..85d99508 100644 --- a/ospfd/ChangeLog +++ b/ospfd/ChangeLog @@ -1,3 +1,9 @@ +2004-11-12 Paul Jakma + + * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to + ignore stub area summary default. Even so it seems a strange + check, add a comment to that effect. + 2004-11-04 Paul Jakma * ospfd.c: (ospf_network_match_iface) revert to previous network diff --git a/ospfd/ospf_ia.c b/ospfd/ospf_ia.c index ff47f4fe..8e82582d 100644 --- a/ospfd/ospf_ia.c +++ b/ospfd/ospf_ia.c @@ -241,7 +241,12 @@ process_summary_lsa (struct ospf_area *area, struct route_table *rt, ospf_area_range_active (range)) return 0; - if (ospf->abr_type != OSPF_ABR_STAND && + /* XXX: This check seems dubious to me. If an ABR has already decided + * to consider summaries received in this area, then why would one wish + * to exclude default? + */ + if (IS_OSPF_ABR(ospf) && + ospf->abr_type != OSPF_ABR_STAND && area->external_routing != OSPF_AREA_DEFAULT && p.prefix.s_addr == OSPF_DEFAULT_DESTINATION && p.prefixlen == 0) -- cgit v1.2.1