aboutsummaryrefslogtreecommitdiff
path: root/sysutils/slurm-wlm/files/patch-src_plugins_auth_slurm_sack.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysutils/slurm-wlm/files/patch-src_plugins_auth_slurm_sack.c')
-rw-r--r--sysutils/slurm-wlm/files/patch-src_plugins_auth_slurm_sack.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/sysutils/slurm-wlm/files/patch-src_plugins_auth_slurm_sack.c b/sysutils/slurm-wlm/files/patch-src_plugins_auth_slurm_sack.c
new file mode 100644
index 000000000000..f0ee2bac99e6
--- /dev/null
+++ b/sysutils/slurm-wlm/files/patch-src_plugins_auth_slurm_sack.c
@@ -0,0 +1,17 @@
+--- src/plugins/auth/slurm/sack.c.orig 2024-05-21 17:19:51 UTC
++++ src/plugins/auth/slurm/sack.c
+@@ -278,8 +278,12 @@ extern void init_sack_conmgr(void)
+
+ /* set value of socket path */
+ mask = umask(0);
+- if ((rc = bind(fd, (const struct sockaddr *) &addr,
+- sizeof(addr))))
++/* AF_UNIX length handling */
++ socklen_t len = SUN_LEN(&addr);
++#if defined(__FreeBSD__)
++ addr.sun_len = (uint8_t)len;
++#endif
++ if ((rc = bind(fd, (const struct sockaddr *)&addr, len)))
+ fatal("%s: [%s] Unable to bind UNIX socket: %m",
+ __func__, addr.sun_path);
+ umask(mask);