mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-04-30 18:25:15 +00:00
pimd: Fix missing code
Found some more missing code that got dropped during the upstreaming process causing issues with things actually working. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
edfdfe201a
commit
df94b33a6e
@ -375,6 +375,20 @@ static bool pim_channel_eval_oif_mute(struct channel_oil *c_oil,
|
|||||||
return do_mute;
|
return do_mute;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (PIM_I_am_DualActive(pim_ifp)) {
|
||||||
|
struct pim_upstream *starup = c_oil->up->parent;
|
||||||
|
if (PIM_UPSTREAM_FLAG_TEST_MLAG_INTERFACE(c_oil->up->flags)
|
||||||
|
&& (PIM_UPSTREAM_FLAG_TEST_MLAG_NON_DF(c_oil->up->flags)))
|
||||||
|
do_mute = true;
|
||||||
|
|
||||||
|
/* In case entry is (S,G), Negotiation happens at (*.G) */
|
||||||
|
if (starup
|
||||||
|
|
||||||
|
&& PIM_UPSTREAM_FLAG_TEST_MLAG_INTERFACE(starup->flags)
|
||||||
|
&& (PIM_UPSTREAM_FLAG_TEST_MLAG_NON_DF(starup->flags)))
|
||||||
|
do_mute = true;
|
||||||
|
return do_mute;
|
||||||
|
}
|
||||||
return do_mute;
|
return do_mute;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -286,7 +286,8 @@ static inline bool pim_up_mlag_is_local(struct pim_upstream *up)
|
|||||||
/* XXX: extend this to also return true if the channel-oil has
|
/* XXX: extend this to also return true if the channel-oil has
|
||||||
* any AA devices
|
* any AA devices
|
||||||
*/
|
*/
|
||||||
return (up->flags & PIM_UPSTREAM_FLAG_MASK_MLAG_VXLAN);
|
return (up->flags & (PIM_UPSTREAM_FLAG_MASK_MLAG_VXLAN
|
||||||
|
| PIM_UPSTREAM_FLAG_MASK_MLAG_INTERFACE));
|
||||||
}
|
}
|
||||||
|
|
||||||
struct pim_upstream *pim_upstream_find(struct pim_instance *pim,
|
struct pim_upstream *pim_upstream_find(struct pim_instance *pim,
|
||||||
|
Loading…
Reference in New Issue
Block a user