1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

* sysdeps/posix/spawni.c (__spawni): Use local_seteuid and

local_setegid instead of seteuid and setegid.
	* sysdeps/generic/local-setxid.h: New file.
	* sysdeps/unix/sysv/linux/local-setxid.h: New file.
This commit is contained in:
Ulrich Drepper
2006-06-04 22:17:06 +00:00
parent 7231452e5c
commit 1b8373f475
4 changed files with 35 additions and 1 deletions

View File

@ -26,6 +26,7 @@
#include <unistd.h>
#include "spawn_int.h"
#include <not-cancel.h>
#include <local-setxid.h>
/* The Unix standard contains a long explanation of the way to signal
@ -155,7 +156,8 @@ __spawni (pid_t *pid, const char *file,
/* Set the effective user and group IDs. */
if ((flags & POSIX_SPAWN_RESETIDS) != 0
&& (seteuid (__getuid ()) != 0 || setegid (__getgid ()) != 0))
&& (local_seteuid (__getuid ()) != 0
|| local_setegid (__getgid ()) != 0))
_exit (SPAWN_ERROR);
/* Execute the file actions. */