mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-27 05:04:18 +00:00
commit
bb738156e4
@ -790,6 +790,16 @@ void pim_ifchannel_join_add(struct interface *ifp,
|
||||
pim_upstream_inherited_olist (ch->upstream);
|
||||
pim_forward_start(ch);
|
||||
}
|
||||
/*
|
||||
* If we are going to be a LHR, we need to note it
|
||||
*/
|
||||
if (ch->upstream->parent &&
|
||||
(ch->upstream->parent->flags & PIM_UPSTREAM_FLAG_MASK_SRC_IGMP) &&
|
||||
!(ch->upstream->flags & PIM_UPSTREAM_FLAG_MASK_SRC_LHR))
|
||||
{
|
||||
pim_upstream_ref (ch->upstream, PIM_UPSTREAM_FLAG_MASK_SRC_LHR);
|
||||
pim_upstream_keep_alive_timer_start (ch->upstream, qpim_keep_alive_time);
|
||||
}
|
||||
break;
|
||||
case PIM_IFJOIN_JOIN:
|
||||
zassert(!ch->t_ifjoin_prune_pending_timer);
|
||||
|
@ -1217,7 +1217,7 @@ pim_upstream_is_sg_rpt (struct pim_upstream *up)
|
||||
void
|
||||
pim_upstream_set_sptbit (struct pim_upstream *up, struct interface *incoming)
|
||||
{
|
||||
struct pim_rpf *grpf = NULL;
|
||||
struct pim_upstream *starup = up->parent;
|
||||
|
||||
// iif == RPF_interfvace(S)
|
||||
if (up->rpf.source_nexthop.interface != incoming)
|
||||
@ -1242,8 +1242,7 @@ pim_upstream_set_sptbit (struct pim_upstream *up, struct interface *incoming)
|
||||
}
|
||||
|
||||
// OR RPF_interface(S) != RPF_interface(RP(G))
|
||||
grpf = RP(up->sg.grp);
|
||||
if (!grpf || up->rpf.source_nexthop.interface != grpf->source_nexthop.interface)
|
||||
if (!starup || up->rpf.source_nexthop.interface != starup->rpf.source_nexthop.interface)
|
||||
{
|
||||
if (PIM_DEBUG_TRACE)
|
||||
zlog_debug ("%s: %s RPF_interface(S) != RPF_interface(RP(G))",
|
||||
|
Loading…
Reference in New Issue
Block a user