diff options
-rw-r--r-- | proto/ospf/hello.c | 2 | ||||
-rw-r--r-- | proto/ospf/neighbor.c | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/proto/ospf/hello.c b/proto/ospf/hello.c index 74ae43a..d15f529 100644 --- a/proto/ospf/hello.c +++ b/proto/ospf/hello.c @@ -161,7 +161,7 @@ ospf_hello_rx(struct ospf_hello_packet *ps, struct proto *p, ospf_int_sm(ifa, ISM_NEICH); /* Neighbor is no more declaring itself as DR or BDR */ - if(((n->rid==olddr) && (n->dr!=olddr)) || ((n->rid==olbddr) && + if(((n->rid==olddr) && (n->dr!=olddr)) || ((n->rid==oldbdr) && (n->dr!=oldbdr))) ospf_int_sm(ifa, ISM_NEICH); } diff --git a/proto/ospf/neighbor.c b/proto/ospf/neighbor.c index 466c7ad..9f1c7fd 100644 --- a/proto/ospf/neighbor.c +++ b/proto/ospf/neighbor.c @@ -29,8 +29,10 @@ neigh_chstate(struct ospf_neighbor *n, u8 state) { ifa=n->ifa; n->state=state; - if(state==2WAY && oldstate<2WAY) ospf_int_sm(n->ifa, ISM_NEICH); - if(state<2WAY && oldstate>=2WAY) ospf_int_sm(n->ifa, ISM_NEICH); + if((state==NEIGHBOR_2WAY) && (oldstate<NEIGHBOR_2WAY)) + ospf_int_sm(n->ifa, ISM_NEICH); + if((state<NEIGHBOR_2WAY) && (oldstate>=NEIGHBOR_2WAY)) + ospf_int_sm(n->ifa, ISM_NEICH); if(oldstate==NEIGHBOR_FULL) /* Decrease number of adjacencies */ { ifa->fadj--; |