Setuid after read proc

This commit is contained in:
vvb2060 2019-01-26 04:34:29 +08:00 committed by John Wu
parent d6abaf846e
commit 2cf33d635d

View File

@ -335,7 +335,6 @@ void su_daemon_handler(int client, struct ucred *credential) {
// Setup environment
umask(022);
set_identity(ctx.req.uid);
char path[32], buf[4096];
snprintf(path, sizeof(path), "/proc/%d/cwd", ctx.pid);
xreadlink(path, buf, sizeof(buf));
@ -363,6 +362,7 @@ void su_daemon_handler(int client, struct ucred *credential) {
}
}
set_identity(ctx.req.uid);
execvp(ctx.req.shell, (char **) argv);
fprintf(stderr, "Cannot execute %s: %s\n", ctx.req.shell, strerror(errno));
PLOGE("exec");