]> git.puffer.fish Git - matthieu/frr.git/commitdiff
ospf6d: fix missing intra-area-prefix-LSA after a graceful restart
authorRenato Westphal <renato@opensourcerouting.org>
Wed, 1 Mar 2023 20:31:56 +0000 (17:31 -0300)
committerRenato Westphal <renato@opensourcerouting.org>
Thu, 2 Mar 2023 22:38:03 +0000 (19:38 -0300)
Upon exiting the GR mode, force reorigination of intra-area-prefix-LSAs
on all attached areas. This is to ensure all configured areas will have
an associated intra-area-prefix-LSA at the end of the GR procedures,
even if the area doesn't have any full adjacency.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
ospf6d/ospf6_gr.c

index 2e8bb025fb54a3e2e95f711cd939e46d396009ae..847531361eaaa9cc9fb1f7e998108eab633ccccc 100644 (file)
@@ -149,6 +149,12 @@ static void ospf6_gr_restart_exit(struct ospf6 *ospf6, const char *reason)
                 */
                OSPF6_ROUTER_LSA_EXECUTE(area);
 
+               /*
+                * Force reorigination of intra-area-prefix-LSAs to handle
+                * areas without any full adjacency.
+                */
+               OSPF6_INTRA_PREFIX_LSA_SCHEDULE_STUB(area);
+
                for (ALL_LIST_ELEMENTS_RO(area->if_list, anode, oi)) {
                        /* Reoriginate Link-LSA. */
                        if (oi->type != OSPF_IFTYPE_VIRTUALLINK)