summaryrefslogtreecommitdiff
path: root/pimd/pim_mroute.c
diff options
context:
space:
mode:
authorDonald Sharp <donaldsharp72@gmail.com>2025-02-24 13:53:39 -0500
committerGitHub <noreply@github.com>2025-02-24 13:53:39 -0500
commit777aae08cfb5d85b98fe24317565e01b71fc7580 (patch)
tree2f97ae91f92f051548ba3fb8e7ca0b41bfa3ddbd /pimd/pim_mroute.c
parent231110aefd34bd72b84dfd72a1aabdecda86cfaf (diff)
parent7e181a771c2e525aeda6e8f6c2d58e9ee2503949 (diff)
Merge pull request #18226 from nabahr/pim-vrf-bind
pim: Fix vrf binding of autorp and mroute socket
Diffstat (limited to 'pimd/pim_mroute.c')
-rw-r--r--pimd/pim_mroute.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/pimd/pim_mroute.c b/pimd/pim_mroute.c
index 6c13e1324f..30daa3a929 100644
--- a/pimd/pim_mroute.c
+++ b/pimd/pim_mroute.c
@@ -876,17 +876,11 @@ int pim_mroute_socket_enable(struct pim_instance *pim)
pim->vrf->name);
#endif
-#ifdef SO_BINDTODEVICE
- if (pim->vrf->vrf_id != VRF_DEFAULT
- && setsockopt(fd, SOL_SOCKET, SO_BINDTODEVICE,
- pim->vrf->name, strlen(pim->vrf->name))) {
- zlog_warn("Could not setsockopt SO_BINDTODEVICE: %s",
- safe_strerror(errno));
+ if (vrf_bind(pim->vrf->vrf_id, fd, NULL)) {
+ zlog_warn("Could not bind to vrf: %s", safe_strerror(errno));
close(fd);
return -3;
}
-#endif
-
}
pim->mroute_socket = fd;