pimd: Fix some small crashes in pim

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
Donald Sharp 2017-06-29 09:20:42 -04:00
parent 9c80de2434
commit 1e7a3a2a53
2 changed files with 8 additions and 1 deletions

View File

@ -568,7 +568,7 @@ struct pim_ifchannel *pim_ifchannel_add(struct interface *ifp,
__PRETTY_FUNCTION__, pim_str_sg_dump(sg), ifp->name);
pim_ifchannel_remove_children(ch);
if (ch)
if (ch->sources)
list_delete(ch->sources);
listnode_delete(pim_ifp->pim_ifchannel_list, ch);

View File

@ -1362,6 +1362,13 @@ static int pim_upstream_register_stop_timer(struct thread *t)
return 0;
}
rpg = RP(pim_ifp->pim, up->sg.grp);
if (!rpg) {
if (PIM_DEBUG_TRACE)
zlog_debug(
"%s: Cannot send register for %s no RPF to the RP",
__PRETTY_FUNCTION__, up->sg_str);
return 0;
}
memset(&ip_hdr, 0, sizeof(struct ip));
ip_hdr.ip_p = PIM_IP_PROTO_PIM;
ip_hdr.ip_hl = 5;