diff options
author | mobash-rasool <mrasool@vmware.com> | 2023-10-10 18:40:24 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-10 18:40:24 +0200 |
commit | 9b6f41bfbe39f9ad43d6440d625093cefc03ed96 (patch) | |
tree | 0fda498b1faefde882bea27bc714327cb4556734 /pimd/pim_iface.c | |
parent | Merge pull request #14535 from opensourcerouting/fix/bgp_aggregate_stuff (diff) | |
parent | pimd: Fix missing pimreg interface (diff) | |
download | frr-9b6f41bfbe39f9ad43d6440d625093cefc03ed96.tar.xz frr-9b6f41bfbe39f9ad43d6440d625093cefc03ed96.zip |
Merge pull request #13617 from anlancs/fix/pimd-remove-pimreg-vrfbase_9.1
pimd: Fix missing pimreg interface
Diffstat (limited to 'pimd/pim_iface.c')
-rw-r--r-- | pimd/pim_iface.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/pimd/pim_iface.c b/pimd/pim_iface.c index 85e0fdf3a..5fa4715b0 100644 --- a/pimd/pim_iface.c +++ b/pimd/pim_iface.c @@ -1500,9 +1500,16 @@ void pim_if_create_pimreg(struct pim_instance *pim) pim->vrf->name); pim->regiface->ifindex = PIM_OIF_PIM_REGISTER_VIF; - if (!pim->regiface->info) - pim_if_new(pim->regiface, false, false, true, - false /*vxlan_term*/); + /* + * The pimreg interface might has been removed from + * kerenl with the VRF's deletion. It must be + * recreated, so delete the old one first. + */ + if (pim->regiface->info) + pim_if_delete(pim->regiface); + + pim_if_new(pim->regiface, false, false, true, + false /*vxlan_term*/); /* * On vrf moves we delete the interface if there |