From 9d49a381ad92d5a1b6aebc05d9b34516825aeab7 Mon Sep 17 00:00:00 2001 From: Moe Jette <jette1@llnl.gov> Date: Thu, 2 Apr 2009 21:23:59 +0000 Subject: [PATCH] svn merge -r17124:17129 https://eris.llnl.gov/svn/slurm/branches/slurm-1.3 --- src/slurmctld/trigger_mgr.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/slurmctld/trigger_mgr.c b/src/slurmctld/trigger_mgr.c index fe05f24bb51..c4c08d4e118 100644 --- a/src/slurmctld/trigger_mgr.c +++ b/src/slurmctld/trigger_mgr.c @@ -973,6 +973,8 @@ static void _trigger_run_program(trig_mgr_info_t *trig_in) trig_in->group_id = child; } else if (child == 0) { int i; + bool run_as_self = (uid == getuid()); + for (i=0; i<128; i++) close(i); #ifdef SETPGRP_TWO_ARGS @@ -981,15 +983,15 @@ static void _trigger_run_program(trig_mgr_info_t *trig_in) setpgrp(); #endif setsid(); - if (initgroups(user_name, gid) == -1) { + if ((initgroups(user_name, gid) == -1) && !run_as_self) { error("trigger: initgroups: %m"); exit(1); } - if (setgid(gid) == -1) { + if ((setgid(gid) == -1) && !run_as_self){ error("trigger: setgid: %m"); exit(1); } - if (setuid(uid) == -1) { + if ((setuid(uid) == -1) && !run_as_self) { error("trigger: setuid: %m"); exit(1); } -- GitLab