Merge pull request #7202 from gromit1811/proposed_fix_7030

ospf6d: Fix flooding of old copies of self-originated LSAs
This commit is contained in:
Olivier Dugeon 2020-10-06 16:42:41 +02:00 committed by GitHub
commit 24d7ccfabd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1001,18 +1001,22 @@ void ospf6_receive_lsa(struct ospf6_neighbor *from,
* MAXAGEd and not removed.*/
if (OSPF6_LSA_IS_MAXAGE(old)
&& !OSPF6_LSA_IS_MAXAGE(new)) {
if (new->header->adv_router
!= from->ospf6_if->area->ospf6->router_id) {
if (is_debug)
zlog_debug(
"%s: Current copy of LSA %s is MAXAGE, but new has recent Age.",
old->name, __func__);
"%s: Current copy of LSA %s is MAXAGE, but new has recent age, flooding/installing.",
old->name, __PRETTY_FUNCTION__);
ospf6_lsa_purge(old);
if (new->header->adv_router
!= from->ospf6_if->area->ospf6->router_id)
ospf6_flood(from, new);
ospf6_install_lsa(new);
} else {
if (is_debug)
zlog_debug(
"%s: Current copy of self-originated LSA %s is MAXAGE, but new has recent age, ignoring new.",
old->name, __PRETTY_FUNCTION__);
ospf6_lsa_delete(new);
}
return;
}