]> git.puffer.fish Git - mirror/frr.git/commitdiff
pimd: Another null pointer dereference
authorDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 24 Aug 2016 20:09:28 +0000 (16:09 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 22 Dec 2016 01:26:07 +0000 (20:26 -0500)
When starting up with a large # of streams
it is possible to have a timing where we
do not yet have a pim_ifp.

Ticket: CM-12636
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
pimd/pim_upstream.c

index 5c142a167477203c5668aaa990bade4260382d4e..0f86e8bdfd6e1fa1f090ce2520ca913eacf17ca3 100644 (file)
@@ -1070,7 +1070,7 @@ pim_upstream_inherited_olist (struct pim_upstream *up)
   int output_intf = 0;
 
   pim_ifp = up->rpf.source_nexthop.interface->info;
-  if (!up->channel_oil)
+  if (pim_ifp && !up->channel_oil)
     up->channel_oil = pim_channel_oil_add (&up->sg, pim_ifp->mroute_vif_index);
 
   for (ALL_LIST_ELEMENTS (vrf_iflist (VRF_DEFAULT), ifnode, ifnextnode, ifp))