mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-09 16:52:25 +00:00
pimd: When the Keep Alive timer Pops Stop timers
When the Keep alive timer Pops stop the timer and send a prune upstream if we need to remove the state. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
4304f95c86
commit
d854589aba
@ -635,7 +635,6 @@ void pim_upstream_update_join_desired(struct pim_upstream *up)
|
|||||||
|
|
||||||
/* switched from true to false */
|
/* switched from true to false */
|
||||||
if (!is_join_desired && was_join_desired) {
|
if (!is_join_desired && was_join_desired) {
|
||||||
zassert(up->join_state == PIM_UPSTREAM_JOINED);
|
|
||||||
pim_upstream_switch(up, PIM_UPSTREAM_NOTJOINED);
|
pim_upstream_switch(up, PIM_UPSTREAM_NOTJOINED);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -837,6 +836,11 @@ pim_upstream_keep_alive_timer (struct thread *t)
|
|||||||
(up->channel_oil->cc.oldlastused >= up->channel_oil->cc.lastused))
|
(up->channel_oil->cc.oldlastused >= up->channel_oil->cc.lastused))
|
||||||
{
|
{
|
||||||
pim_mroute_del (up->channel_oil);
|
pim_mroute_del (up->channel_oil);
|
||||||
|
THREAD_OFF (up->t_ka_timer);
|
||||||
|
THREAD_OFF (up->t_rs_timer);
|
||||||
|
THREAD_OFF (up->t_join_timer);
|
||||||
|
pim_joinprune_send (up->rpf.source_nexthop.interface, up->rpf.rpf_addr,
|
||||||
|
&up->sg, 0);
|
||||||
pim_upstream_del (up);
|
pim_upstream_del (up);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Loading…
Reference in New Issue
Block a user