diff options
author | Anuradha Karuppiah <anuradhak@cumulusnetworks.com> | 2019-04-06 16:52:11 +0200 |
---|---|---|
committer | Anuradha Karuppiah <anuradhak@cumulusnetworks.com> | 2019-04-20 17:33:23 +0200 |
commit | 5121278ecc8cda567c7b3b10f28f98fe016441e4 (patch) | |
tree | b0795102792ba70ba5722f356e45195022c4260d /pimd/pim_vxlan.c | |
parent | pimd: hidden command to set MLAG parameters (diff) | |
download | frr-5121278ecc8cda567c7b3b10f28f98fe016441e4.tar.xz frr-5121278ecc8cda567c7b3b10f28f98fe016441e4.zip |
pimd: create pimreg implicity if ipmr-lo is the first pim device
On the first pim interface creation pimreg needs to be implicitly
created.
Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_vxlan.c')
-rw-r--r-- | pimd/pim_vxlan.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pimd/pim_vxlan.c b/pimd/pim_vxlan.c index fbc9adaf2..a4a6ce692 100644 --- a/pimd/pim_vxlan.c +++ b/pimd/pim_vxlan.c @@ -960,11 +960,16 @@ void pim_vxlan_add_term_dev(struct pim_instance *pim, /* enable pim on the term ifp */ pim_ifp = (struct pim_interface *)ifp->info; - if (pim_ifp) + if (pim_ifp) { PIM_IF_DO_PIM(pim_ifp->options); - else + } else { pim_ifp = pim_if_new(ifp, false /*igmp*/, true /*pim*/, false /*pimreg*/, true /*vxlan_term*/); + /* ensure that pimreg existss before using the newly created + * vxlan termination device + */ + pim_if_create_pimreg(pim); + } pim->vxlan.term_if = ifp; hash_iterate(pim_ifp->pim->vxlan.sg_hash, |