From: Donald Sharp Date: Fri, 19 May 2017 13:14:06 +0000 (-0400) Subject: pimd: Create the pimreg device name correctly X-Git-Tag: frr-4.0-dev~468^2~132 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=afa2b1792096a2f55e7b631898e8e5f648b7a6bc;p=mirror%2Ffrr.git pimd: Create the pimreg device name correctly The pimreg device name should be based upon the tableid we create( as that this is what the kernel does ) Signed-off-by: Donald Sharp --- diff --git a/pimd/pim_iface.c b/pimd/pim_iface.c index 70d013e5e7..5f9526845f 100644 --- a/pimd/pim_iface.c +++ b/pimd/pim_iface.c @@ -1561,10 +1561,17 @@ void pim_if_update_assert_tracking_desired(struct interface *ifp) */ void pim_if_create_pimreg(struct pim_instance *pim) { + char pimreg_name[100]; if (!pim->regiface) { - pim->regiface = - if_create("pimreg", strlen("pimreg"), pim->vrf_id); + if (pim->vrf_id == VRF_DEFAULT) + strcpy(pimreg_name, "pimreg"); + else + sprintf(pimreg_name, "pimreg%d", + pim->vrf->data.l.table_id); + + pim->regiface = if_create(pimreg_name, strlen(pimreg_name), + pim->vrf_id); pim->regiface->ifindex = PIM_OIF_PIM_REGISTER_VIF; pim_if_new(pim->regiface, 0, 0);