mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-22 17:51:53 +00:00
OSPF: DD seqnum should be initialized only for first attempts
After SeqNumberMismatch/BadLSReq, we should continue with the old seqnum++. The old code tries to do that by n->adj, but it was set nowhere.
This commit is contained in:
parent
2bbd72863f
commit
bf402c61e6
@ -85,7 +85,6 @@ ospf_neighbor_new(struct ospf_iface *ifa)
|
||||
n->pool = pool;
|
||||
n->ifa = ifa;
|
||||
add_tail(&ifa->neigh_list, NODE n);
|
||||
n->adj = 0;
|
||||
n->csn = 0;
|
||||
n->state = NEIGHBOR_DOWN;
|
||||
|
||||
@ -179,8 +178,8 @@ ospf_neigh_chstate(struct ospf_neighbor *n, u8 state)
|
||||
|
||||
if (state == NEIGHBOR_EXSTART)
|
||||
{
|
||||
/* First time adjacency */
|
||||
if (n->adj == 0)
|
||||
/* First time adjacency attempt */
|
||||
if (old_state < NEIGHBOR_EXSTART)
|
||||
n->dds = random_u32();
|
||||
|
||||
n->dds++;
|
||||
|
@ -363,7 +363,6 @@ struct ospf_neighbor
|
||||
u32 rid; /* Router ID */
|
||||
ip_addr ip; /* IP of it's interface */
|
||||
u8 priority; /* Priority */
|
||||
u8 adj; /* built adjacency? */
|
||||
u32 options; /* Options received */
|
||||
|
||||
/* Entries dr and bdr store IP addresses in OSPFv2 and router IDs in
|
||||
|
Loading…
Reference in New Issue
Block a user