summaryrefslogtreecommitdiffstats
path: root/ospf6d/ospf6_flood.c
diff options
context:
space:
mode:
authorMartin Winter <mwinter@opensourcerouting.org>2021-05-13 20:12:43 +0200
committerGitHub <noreply@github.com>2021-05-13 20:12:43 +0200
commitd390582e647f744d36d5be80a1fe7716d8bf0e50 (patch)
treebcad5071de46eb3fa52ffca912da6dfedac2f8e4 /ospf6d/ospf6_flood.c
parentMerge pull request #8649 from ton31337/fix/unify-naming-for-topotests-directory (diff)
parentospf6d: Send MAXAGE LS update for received old self-originated LSAs (diff)
downloadfrr-d390582e647f744d36d5be80a1fe7716d8bf0e50.tar.xz
frr-d390582e647f744d36d5be80a1fe7716d8bf0e50.zip
Merge pull request #8658 from gromit1811/bugfix_8567
Fix #8567 OSPFv3-26.13 ANVL failure
Diffstat (limited to 'ospf6d/ospf6_flood.c')
-rw-r--r--ospf6d/ospf6_flood.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/ospf6d/ospf6_flood.c b/ospf6d/ospf6_flood.c
index 0fa6f8c77..76e81aab7 100644
--- a/ospf6d/ospf6_flood.c
+++ b/ospf6d/ospf6_flood.c
@@ -1018,18 +1018,20 @@ void ospf6_receive_lsa(struct ospf6_neighbor *from,
if (is_debug)
zlog_debug(
"%s: Current copy of LSA %s is MAXAGE, but new has recent age, flooding/installing.",
- old->name, __PRETTY_FUNCTION__);
+ __PRETTY_FUNCTION__, old->name);
ospf6_lsa_purge(old);
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;
}
- return;
+ /* For self-originated LSA, only trust
+ * ourselves. Fall through and send
+ * LS Update with our current copy.
+ */
+ if (is_debug)
+ zlog_debug(
+ "%s: Current copy of self-originated LSA %s is MAXAGE, but new has recent age, re-sending current one.",
+ __PRETTY_FUNCTION__, old->name);
}
/* XXX, MinLSArrival check !? RFC 2328 13 (8) */