SHA256
1
0
forked from pool/slurm
slurm/slurmd-uses-xdaemon_-for-systemd.patch
Egbert Eich 55d6d2b0c7 Accepting request 615950 from home:mslacken
- Fix security issue in handling of username and gid fields
  CVE-2018-10995 what implied an update from 17.11.5 to 17.11.7
- Update from 17.11.5 to 17.11.7
  Highlights of 17.11.6:
  * CRAY - Add slurmsmwd to the contribs/cray dir
  * PMIX - Added the direct connect authentication.
  * Prevent the backup slurmctld from losing the active/available node
    features list on takeover.
  * Be able to force power_down of cloud node even if in power_save state.
  * Allow cloud nodes to be recognized in Slurm when booted out of band.
  * Numerous fixes - check 'NEWS' file.
  Highlights of 17.11.7:
  * Notify srun and ctld when unkillable stepd exits.
  * Numerous fixes - check 'NEWS' file.

OBS-URL: https://build.opensuse.org/request/show/615950
OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=58
2018-06-11 10:31:14 +00:00

46 lines
1.2 KiB
Diff

From 712caf6306c5b08b12e5a481d60bb91adc6c625e Mon Sep 17 00:00:00 2001
From: Christian Goll <cgoll@suse.de>
Date: Mon, 9 Apr 2018 10:59:57 +0200
Subject: [PATCH 3/6] slurmd uses xdaemon_* for systemd
---
src/slurmd/slurmd/slurmd.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/slurmd/slurmd/slurmd.c b/src/slurmd/slurmd/slurmd.c
index 140fd70adc..92d1faf0bc 100644
--- a/src/slurmd/slurmd/slurmd.c
+++ b/src/slurmd/slurmd/slurmd.c
@@ -214,7 +214,7 @@ static void _wait_for_all_threads(int secs);
int
main (int argc, char **argv)
{
- int i, pidfd;
+ int i, pidfd, pipefd;
int blocked_signals[] = {SIGPIPE, 0};
int cc;
char *oom_value;
@@ -299,7 +299,8 @@ main (int argc, char **argv)
* Become a daemon if desired.
*/
if (conf->daemonize) {
- if (xdaemon())
+ pipefd = xdaemon_init();
+ if (pipefd == -1)
error("Couldn't daemonize slurmd: %m");
}
test_core_limit();
@@ -355,6 +356,9 @@ main (int argc, char **argv)
conf->pid = getpid();
pidfd = create_pidfile(conf->pidfile, 0);
+ if (conf->daemonize) {
+ xdaemon_finish(pipefd);
+ }
rfc2822_timestamp(time_stamp, sizeof(time_stamp));
info("%s started on %s", slurm_prog_name, time_stamp);
--
2.13.7