diff options
| author | Anuradha Karuppiah <anuradhak@cumulusnetworks.com> | 2019-04-06 07:52:11 -0700 |
|---|---|---|
| committer | Anuradha Karuppiah <anuradhak@cumulusnetworks.com> | 2019-04-20 08:33:23 -0700 |
| commit | 5121278ecc8cda567c7b3b10f28f98fe016441e4 (patch) | |
| tree | b0795102792ba70ba5722f356e45195022c4260d | |
| parent | 7c85225cf503ef14c96f50d925491d44862efa4f (diff) | |
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>
| -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 fbc9adaf27..a4a6ce6922 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, |
