diff options
author | Ondrej Filip <feela@network.cz> | 2000-06-05 20:09:49 +0200 |
---|---|---|
committer | Ondrej Filip <feela@network.cz> | 2000-06-05 20:09:49 +0200 |
commit | 44fc1888cf284d863c897b861942612acf36f52f (patch) | |
tree | 0028c83c5e364d68355c3ca2f0859aad8220f4a5 /proto/ospf | |
parent | aba5e89f9310bb33c7362b02108e640983ad0819 (diff) | |
download | bird-44fc1888cf284d863c897b861942612acf36f52f.tar bird-44fc1888cf284d863c897b861942612acf36f52f.zip |
First calculate checksum and then send refreshed LSA!
Diffstat (limited to 'proto/ospf')
-rw-r--r-- | proto/ospf/lsalib.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/proto/ospf/lsalib.c b/proto/ospf/lsalib.c index 0154504..181f78b 100644 --- a/proto/ospf/lsalib.c +++ b/proto/ospf/lsalib.c @@ -33,13 +33,15 @@ ospf_age(struct ospf_area *oa) if(flush) flush_lsa(en,oa); continue; } - if((en->lsa.rt==p->cf->global->router_id)&&(en->lsa.age>LSREFRESHTIME)) + if((en->lsa.rt==p->cf->global->router_id)&&(en->lsa.age>=LSREFRESHTIME)) { + debug("%s: Refreshing my LSA: Type: %u, Id: %I, Rt: %I\n", + p->name,en->lsa.type, en->lsa.id, en->lsa.rt); en->lsa.sn++; en->lsa.age=0; - flood_lsa(NULL,NULL,&en->lsa,po,NULL,oa,1); lsasum_calculate(&en->lsa,en->lsa_body,po); - return; + flood_lsa(NULL,NULL,&en->lsa,po,NULL,oa,1); + continue; } if((en->lsa.age+=delta)>=LSA_MAXAGE) { |