diff options
Diffstat (limited to 'ospfd/ospf_lsa.c')
-rw-r--r-- | ospfd/ospf_lsa.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/ospfd/ospf_lsa.c b/ospfd/ospf_lsa.c index 18eed79e..15a6a4c4 100644 --- a/ospfd/ospf_lsa.c +++ b/ospfd/ospf_lsa.c @@ -2451,7 +2451,10 @@ ospf_router_lsa_install (struct ospf *ospf, if (rt_recalc) ospf_spf_calculate_schedule (ospf); - if (IS_LSA_SELF (new)) + /* Only install LSA if it is originated/refreshed by us. + * If LSA was received by flooding, the RECEIVED flag is set so do + * not link the LSA */ + if (IS_LSA_SELF (new) && !CHECK_FLAG (new->flags, OSPF_LSA_RECEIVED)) { /* Set router-LSA refresh timer. */ OSPF_TIMER_OFF (area->t_router_lsa_self); |