1
0
mirror of https://gitlab.labs.nic.cz/labs/bird.git synced 2024-05-11 16:54:54 +00:00

Hotfix to solve an issue with delaying timers reported by Aleksey Chudov.

This commit is contained in:
Ondrej Filip
2013-02-21 00:44:59 +01:00
parent 9d969be5f2
commit 2bf59bf4d3
2 changed files with 11 additions and 5 deletions

View File

@@ -596,8 +596,12 @@ rip_start(struct proto *p)
init_list( &P->interfaces );
P->timer = tm_new( p->pool );
P->timer->data = p;
P->timer->randomize = 5;
P->timer->recurrent = (P_CF->period / 6)+1;
P->timer->randomize = 2;
P->timer->recurrent = (P_CF->period / 6) - 1;
if (P_CF->period < 12) {
log(L_WARN "Period %d is too low. So I am using 12 which is the lowest possible value.", P_CF->period);
P->timer->recurrent = 1;
}
P->timer->hook = rip_timer;
tm_start( P->timer, 5 );
rif = new_iface(p, NULL, 0, NULL); /* Initialize dummy interface */
@@ -956,9 +960,11 @@ rip_rte_insert(net *net UNUSED, rte *rte)
static void
rip_rte_remove(net *net UNUSED, rte *rte)
{
// struct proto *p = rte->attrs->proto;
#ifdef LOCAL_DEBUG
struct proto *p = rte->attrs->proto;
CHK_MAGIC;
DBG( "rip_rte_remove: %p\n", rte );
#endif
rem_node( &rte->u.rip.garbage );
}