]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Reflood your old lsa.
authorOndrej Filip <feela@network.cz>
Tue, 30 May 2000 17:49:25 +0000 (17:49 +0000)
committerOndrej Filip <feela@network.cz>
Tue, 30 May 2000 17:49:25 +0000 (17:49 +0000)
proto/ospf/lsalib.c

index face9dcfeab4bee0a622bba09859407904bf059d..91a73f0dac87927989963673fed3cdff4fce05ff 100644 (file)
@@ -20,6 +20,7 @@ ospf_age(struct top_hash_entry *en, bird_clock_t delta, int flush,
   struct ospf_area *oa)
 {
   struct proto *p=&oa->po->proto;
+  struct proto_ospf *po=(struct proto_ospf *)p;
   if(en->lsa.age==LSA_MAXAGE)
   {
     if(flush) flush_lsa(en,oa);
@@ -27,13 +28,15 @@ ospf_age(struct top_hash_entry *en, bird_clock_t delta, int flush,
   }
   if((en->lsa.rt==p->cf->global->router_id)&&(en->lsa.age>LSREFRESHTIME))
   {
-     /* FIXME Reflood again my self originated LSA */
+     en->lsa.sn++;
+     en->lsa.age=0;
+     flood_lsa(NULL,NULL,&en->lsa,po,NULL,oa,1);
+     return;
   }
   if((en->lsa.age+=delta)>LSA_MAXAGE)
   {
     if(flush) flush_lsa(en,oa);
     else en->lsa.age=LSA_MAXAGE;
-    return;
   }
 }