From 62fde40935d0493644e5c847d852e86f684f3380 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Wed, 7 Jun 2017 16:24:07 -0400 Subject: [PATCH] pimd: For non-default vrf's bind the msdp socket to the vrf Signed-off-by: Donald Sharp --- pimd/pim_msdp_socket.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pimd/pim_msdp_socket.c b/pimd/pim_msdp_socket.c index 897a1b3d04..ee3cc96980 100644 --- a/pimd/pim_msdp_socket.c +++ b/pimd/pim_msdp_socket.c @@ -24,8 +24,11 @@ #include #include #include +#include +#include #include "pimd.h" +#include "pim_sock.h" #include "pim_msdp.h" #include "pim_msdp_socket.h" @@ -214,6 +217,12 @@ int pim_msdp_sock_connect(struct pim_msdp_peer *mp) return -1; } + if (mp->pim->vrf_id != VRF_DEFAULT) { + struct interface *ifp = + if_lookup_by_name(mp->pim->vrf->name, mp->pim->vrf_id); + pim_socket_bind(mp->fd, ifp); + } + set_nonblocking(mp->fd); /* Set socket send buffer size */ -- 2.39.5