summaryrefslogtreecommitdiff
path: root/pimd/pim_zebra.c
diff options
context:
space:
mode:
Diffstat (limited to 'pimd/pim_zebra.c')
-rw-r--r--pimd/pim_zebra.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/pimd/pim_zebra.c b/pimd/pim_zebra.c
index 7f463715a5..4135ae0408 100644
--- a/pimd/pim_zebra.c
+++ b/pimd/pim_zebra.c
@@ -166,6 +166,13 @@ static int pim_zebra_if_address_add(ZAPI_CALLBACK_ARGS)
struct pim_instance *pim;
pim = pim_get_pim_instance(vrf_id);
+ if (!pim) {
+ if (PIM_DEBUG_ZEBRA)
+ zlog_debug("%s: Unable to find pim instance",
+ __func__);
+ return 0;
+ }
+
pim_ifp->pim = pim;
pim_rp_check_on_if_add(pim_ifp);
@@ -492,7 +499,7 @@ void pim_forward_start(struct pim_ifchannel *ch)
ch->interface->name, &up->upstream_addr);
if (PIM_IF_FLAG_TEST_PROTO_IGMP(ch->flags))
- mask = PIM_OIF_FLAG_PROTO_IGMP;
+ mask = PIM_OIF_FLAG_PROTO_GM;
if (PIM_IF_FLAG_TEST_PROTO_PIM(ch->flags))
mask |= PIM_OIF_FLAG_PROTO_PIM;