]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Backup seen is not called so often.
authorOndrej Filip <feela@network.cz>
Tue, 9 May 2000 18:35:57 +0000 (18:35 +0000)
committerOndrej Filip <feela@network.cz>
Tue, 9 May 2000 18:35:57 +0000 (18:35 +0000)
proto/ospf/hello.c

index 4535c5e63c50e0c1491476fde9fc84e19c8b607f..b6e34e286f6270def20daa93f4b3e0e062b976d7 100644 (file)
@@ -150,10 +150,12 @@ ospf_hello_rx(struct ospf_hello_packet *ps, struct proto *p,
     if(n->priority!=oldpriority) ospf_int_sm(ifa, ISM_NEICH);
 
     /* Router is declaring itself ad DR and there is no BDR */
-    if((n->rid==n->dr) && (n->bdr==0)) ospf_int_sm(ifa, ISM_BACKS);
+    if((n->rid==n->dr) && (n->bdr==0) && (n->state!=NEIGHBOR_FULL))
+      ospf_int_sm(ifa, ISM_BACKS);
 
     /* Neighbor is declaring itself as BDR */
-    if(n->rid==n->bdr) ospf_int_sm(ifa, ISM_BACKS);
+    if((n->rid==n->bdr) && (n->state!=NEIGHBOR_FULL))
+      ospf_int_sm(ifa, ISM_BACKS);
 
     /* Neighbor is newly declaring itself as DR or BDR */
     if(((n->rid==n->dr) && (n->dr!=olddr)) || ((n->rid==n->bdr) &&