summaryrefslogtreecommitdiffstats
path: root/proto
diff options
context:
space:
mode:
authorOndrej Filip <feela@network.cz>2000-05-31 17:24:29 +0200
committerOndrej Filip <feela@network.cz>2000-05-31 17:24:29 +0200
commit82364f4db8fff969932989bfcc5be89c73b15174 (patch)
treea042ef2420def6b8a96882dcc85b65a1689e8f48 /proto
parent0822995cb31b596d1fe9e8bb67f7e9d1c184694e (diff)
downloadbird-82364f4db8fff969932989bfcc5be89c73b15174.tar
bird-82364f4db8fff969932989bfcc5be89c73b15174.zip
Flood my LSA (if exists) after old one is flushed.
Diffstat (limited to 'proto')
-rw-r--r--proto/ospf/lsupd.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/proto/ospf/lsupd.c b/proto/ospf/lsupd.c
index 9eed7e5..b9c26d2 100644
--- a/proto/ospf/lsupd.c
+++ b/proto/ospf/lsupd.c
@@ -356,12 +356,18 @@ ospf_lsupd_rx(struct ospf_lsupd_packet *ps, struct proto *p,
if(self)
{
+ struct top_hash_entry *en;
+
lsa->age=(htons(LSA_MAXAGE));
lsatmp.age=LSA_MAXAGE;
debug("%s: Premature aging self originated lsa.\n",p->name);
debug("%s: Type: %d, Id: %I, Rt: %I\n", p->name, lsatmp.type,
lsatmp.id, lsatmp.rt);
flood_lsa(NULL,lsa,&lsatmp,po,NULL,oa,0);
+ if(en=ospf_hash_find_header(oa->gr,&lsatmp))
+ {
+ flood_lsa(NULL,NULL,&en->lsa,po,NULL,oa,1);
+ }
continue;
}