&& (ch->sg.grp.s_addr == INADDR_ANY))
return;
- RB_FOREACH(child, pim_ifchannel_rb, &pim_ifp->ifchannel_rb) {
+ RB_FOREACH (child, pim_ifchannel_rb, &pim_ifp->ifchannel_rb) {
if ((ch->sg.grp.s_addr != INADDR_ANY)
&& (child->sg.grp.s_addr == ch->sg.grp.s_addr)
&& (child != ch)) {
pim_ifchannel_remove_children(ch);
if (ch->sources)
- list_delete(ch->sources);
+ list_delete_and_null(&ch->sources);
listnode_delete(ch->upstream->ifchannels, ch);
pim_ifp = ifp->info;
zassert(pim_ifp);
- RB_FOREACH(ch, pim_ifchannel_rb, &pim_ifp->ifchannel_rb)
+ RB_FOREACH (ch, pim_ifchannel_rb, &pim_ifp->ifchannel_rb)
ifmembership_set(ch, PIM_IFMEMBERSHIP_NOINFO);
}
pim_ifp = ifp->info;
zassert(pim_ifp);
- RB_FOREACH_SAFE(ch, pim_ifchannel_rb, &pim_ifp->ifchannel_rb, ch_tmp)
+ RB_FOREACH_SAFE (ch, pim_ifchannel_rb, &pim_ifp->ifchannel_rb, ch_tmp)
delete_on_noinfo(ch);
}
pim_ifchannel_remove_children(ch);
if (ch->sources)
- list_delete(ch->sources);
+ list_delete_and_null(&ch->sources);
THREAD_OFF(ch->t_ifjoin_expiry_timer);
THREAD_OFF(ch->t_ifjoin_prune_pending_timer);
{
struct pim_interface *new_pim_ifp = new_ifp->info;
struct pim_instance *pim = new_pim_ifp->pim;
- struct listnode *ifnode;
struct interface *ifp;
- for (ALL_LIST_ELEMENTS_RO(vrf_iflist(pim->vrf_id), ifnode, ifp)) {
+ FOR_ALL_INTERFACES (pim->vrf, ifp) {
struct pim_interface *loop_pim_ifp = ifp->info;
struct pim_ifchannel *ch;
if (new_pim_ifp == loop_pim_ifp)
continue;
- RB_FOREACH(ch, pim_ifchannel_rb, &loop_pim_ifp->ifchannel_rb) {
+ RB_FOREACH (ch, pim_ifchannel_rb, &loop_pim_ifp->ifchannel_rb) {
if (ch->ifjoin_state == PIM_IFJOIN_JOIN) {
struct pim_upstream *up = ch->upstream;
if ((!up->channel_oil)