]> git.puffer.fish Git - mirror/frr.git/commitdiff
ospfd: Summary LSA is not originated when process is reset 9533/head
authorMobashshera Rasool <mrasool@vmware.com>
Wed, 1 Sep 2021 09:11:48 +0000 (02:11 -0700)
committerMobashshera Rasool <mrasool@vmware.com>
Thu, 2 Sep 2021 06:39:00 +0000 (23:39 -0700)
Problem Statement:
==================
Summary LSA is not originated when router-id is modified or process is reset

Root Cause Analysis:
====================
When router-id is modified or process is cleared, all the external LSAs are
 flushed then LSA is re-originated using ospf_external_lsa_rid_change
When the LSAs are flushed, the aggregate flags are not reset.

Fix:
===============
Reset the aggregation flag when the LSAs
 are flushed.

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
ospfd/ospfd.c

index 9a421de0174dc25b08d24e1358f6f427db385a9f..766be607780503d1b2f233ddb5ab870aab7425fb 100644 (file)
@@ -222,6 +222,9 @@ void ospf_process_refresh_data(struct ospf *ospf, bool reset)
                        ospf_lsdb_delete_all(ospf->lsdb);
                }
 
+               /* Since the LSAs are deleted, need reset the aggr flag */
+               ospf_unset_all_aggr_flag(ospf);
+
                /* Delete the LSDB */
                for (ALL_LIST_ELEMENTS(ospf->areas, node, nnode, area))
                        ospf_area_lsdb_discard_delete(area);