diff options
Diffstat (limited to 'pimd/pim_zebra.c')
| -rw-r--r-- | pimd/pim_zebra.c | 9 |
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; |
