summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--proto/ospf/hello.c2
-rw-r--r--proto/ospf/neighbor.c6
2 files changed, 5 insertions, 3 deletions
diff --git a/proto/ospf/hello.c b/proto/ospf/hello.c
index 74ae43ab..d15f5297 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 466c7ad5..9f1c7fd8 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--;