mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-14 23:53:28 +00:00
pimd: Ensure channel_oil_add is created through all paths
If we create a channel_oil ensure that all paths that we can go down will create one. Future commits can remove the (up->channel_oil) tests. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
11884868d4
commit
9e132a491a
@ -201,6 +201,10 @@ static int pim_mroute_msg_nocache(int fd, struct interface *ifp,
|
|||||||
* Let's blackhole those packets for the moment
|
* Let's blackhole those packets for the moment
|
||||||
* As that they will be coming up to the cpu
|
* As that they will be coming up to the cpu
|
||||||
* and causing us to consider them.
|
* and causing us to consider them.
|
||||||
|
*
|
||||||
|
* This *will* create a dangling channel_oil
|
||||||
|
* that I see no way to get rid of. Just noting
|
||||||
|
* this for future reference.
|
||||||
*/
|
*/
|
||||||
c_oil = pim_channel_oil_add(pim_ifp->pim, &sg,
|
c_oil = pim_channel_oil_add(pim_ifp->pim, &sg,
|
||||||
pim_ifp->mroute_vif_index,
|
pim_ifp->mroute_vif_index,
|
||||||
|
@ -770,6 +770,18 @@ static struct pim_upstream *pim_upstream_new(struct pim_instance *pim,
|
|||||||
up->channel_oil = pim_channel_oil_add(
|
up->channel_oil = pim_channel_oil_add(
|
||||||
pim, &up->sg, pim_ifp->mroute_vif_index,
|
pim, &up->sg, pim_ifp->mroute_vif_index,
|
||||||
__PRETTY_FUNCTION__);
|
__PRETTY_FUNCTION__);
|
||||||
|
else {
|
||||||
|
/*
|
||||||
|
* Yeah this should not happen
|
||||||
|
* but let's be sure that we are not
|
||||||
|
* doing something stupid, all paths
|
||||||
|
* through upstream creation will
|
||||||
|
* create a channel oil
|
||||||
|
*/
|
||||||
|
up->channel_oil = pim_channel_oil_add(
|
||||||
|
pim, &up->sg, MAXVIFS,
|
||||||
|
__PRETTY_FUNCTION__);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user