From 4cc62183d6d26638c1a0f00eff17a860c0305294 Mon Sep 17 00:00:00 2001
From: Mark Grondona <mgrondona@llnl.gov>
Date: Wed, 4 Jun 2003 20:43:26 +0000
Subject: [PATCH]  o If slurmd spooldir already exists, do a chmod() to ensure
 directory    permissions are 0755.

---
 src/slurmd/slurmd.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/slurmd/slurmd.c b/src/slurmd/slurmd.c
index 2005fdc224a..5ea4be860c0 100644
--- a/src/slurmd/slurmd.c
+++ b/src/slurmd/slurmd.c
@@ -791,9 +791,20 @@ static int
 _set_slurmd_spooldir(void)
 {
 	debug3("initializing slurmd spool directory");
-	if ((mkdir(conf->spooldir, 0755) < 0) && (errno != EEXIST)) {
-		error("mkdir(%s): %m", conf->spooldir);
-		return SLURM_ERROR;
+
+	if (mkdir(conf->spooldir, 0755) < 0) {
+		if (errno != EEXIST) {
+			error("mkdir(%s): %m", conf->spooldir);
+			return SLURM_ERROR;
+		}
+
+		/* 
+		 * Ensure spool directory permissions are correct.
+		 */
+		if (chmod(conf->spooldir, 0755) < 0) {
+			error("chmod(%s, 0755): %m", conf->spooldir);
+			return SLURM_ERROR;
+		}
 	}
 
 	return SLURM_SUCCESS;
-- 
GitLab