Stupid bug (essentially while(1) loop) occuring sometimes during start
of bird fixed.
This commit is contained in:
parent
7e1f99719e
commit
e7f76bae8c
1 changed files with 6 additions and 6 deletions
|
@ -138,13 +138,13 @@ rip_tx( sock *s )
|
||||||
FIB_ITERATE_START(&P->rtable, &c->iter, z) {
|
FIB_ITERATE_START(&P->rtable, &c->iter, z) {
|
||||||
struct rip_entry *e = (struct rip_entry *) z;
|
struct rip_entry *e = (struct rip_entry *) z;
|
||||||
|
|
||||||
if (rif->triggered && (!(e->updated < now-5)))
|
if (!rif->triggered || (!(e->updated < now-5))) {
|
||||||
continue;
|
|
||||||
|
|
||||||
rip_tx_prepare( p, s->daddr, packet->block + i, e );
|
rip_tx_prepare( p, s->daddr, packet->block + i, e );
|
||||||
if (i++ == ((P_CF->authtype == AT_MD5) ? PACKET_MD5_MAX : PACKET_MAX)) {
|
if (i++ == ((P_CF->authtype == AT_MD5) ? PACKET_MD5_MAX : PACKET_MAX)) {
|
||||||
FIB_ITERATE_PUT(&c->iter, z);
|
FIB_ITERATE_PUT(&c->iter, z);
|
||||||
goto break_loop;
|
goto break_loop;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} FIB_ITERATE_END(z);
|
} FIB_ITERATE_END(z);
|
||||||
c->done = 1;
|
c->done = 1;
|
||||||
|
|
Loading…
Reference in a new issue