mirror of
https://github.com/troglobit/finit.git
synced 2026-10-16 10:39:35 +00:00
service_start(): Must set GID before dropping user privs, obvs
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
1 parent
5301bcb4f1
commit
f1c9581da9
1 file changed
+3
-3
+3
-3
@@ -192,6 +192,9 @@ static int service_start(svc_t *svc)
|
||||
char *args[MAX_NUM_SVC_ARGS];
|
||||
|
||||
/* Set desired user+group */
|
||||
if (gid >= 0)
|
||||
setgid(gid);
|
||||
|
||||
if (uid >= 0) {
|
||||
setuid(uid);
|
||||
|
||||
@@ -204,9 +207,6 @@ static int service_start(svc_t *svc)
|
||||
}
|
||||
}
|
||||
|
||||
if (gid >= 0)
|
||||
setgid(gid);
|
||||
|
||||
/* Serve copy of args to process in case it modifies them. */
|
||||
for (i = 0; i < (MAX_NUM_SVC_ARGS - 1) && svc->args[i][0] != 0; i++)
|
||||
args[i] = svc->args[i];
|
||||
|
||||
Reference in new issue
Block a user