summaryrefslogtreecommitdiff
path: root/pimd/pim_instance.c
diff options
context:
space:
mode:
Diffstat (limited to 'pimd/pim_instance.c')
-rw-r--r--pimd/pim_instance.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/pimd/pim_instance.c b/pimd/pim_instance.c
index 359e3db718..4b85d45751 100644
--- a/pimd/pim_instance.c
+++ b/pimd/pim_instance.c
@@ -36,6 +36,7 @@
#include "pim_vty.h"
#include "pim_bsm.h"
#include "pim_mlag.h"
+#include "pim_sock.h"
static void pim_instance_terminate(struct pim_instance *pim)
{
@@ -70,6 +71,8 @@ static void pim_instance_terminate(struct pim_instance *pim)
pim_msdp_exit(pim);
+ close(pim->reg_sock);
+
pim_mroute_socket_disable(pim);
XFREE(MTYPE_PIM_PLIST_NAME, pim->spt.plist);
@@ -131,6 +134,10 @@ static struct pim_instance *pim_instance_init(struct vrf *vrf)
pim->last_route_change_time = -1;
+ pim->reg_sock = pim_reg_sock();
+ if (pim->reg_sock < 0)
+ assert(0);
+
/* MSDP global timer defaults. */
pim->msdp.hold_time = PIM_MSDP_PEER_HOLD_TIME;
pim->msdp.keep_alive = PIM_MSDP_PEER_KA_TIME;