NOMBRE
seteuid, setegid − establecen el identificador de usuario o de grupo
SINOPSIS
#include
<sys/types.h>
#include <unistd.h>
int
seteuid(uid_t euid);
int setegid(gid_t egid);
DESCRIPCIÓN
seteuid establece el identificador de usuario efectivo del proceso actual. Los procesos de usuario no privilegiados solamente pueden establecer el identificador de usuario efectivo al identificador de usuario real, el identificador de usuario efectivo o el identificador de usuario guardado.
Precisamente lo mismo puede decirse para setegid con "grupo" en lugar de "usuario".
VALOR DEVUELTO
En caso de éxito, se devuelve cero. En caso de error, se devuelve −1, y errno se modifica apropiadamente.
ERRORES
EPERM |
El proceso actual no pertenece al super-usuario y euid (resp. egid) no es el identificador de usuario (grupo) real, el identificador de usuario (grupo) efectivo o el identificador de usuario (grupo) guardado. |
OBSERVACIONES
Establecer el identificador de usuario (grupo) efectivo al identificador de usuario (grupo) guardado es posible desde la versión 1.1.37 de Linux (1.1.38). En un sistema cualquiera debería comprobarse _POSIX_SAVED_IDS.
Bajo libc4, libc5 y glibc2.0 seteuid(euid) es equivalente a setreuid(-1, euid) y por tanto puede cambiar el identificador de usuario guardado. Bajo glibc2.1 es equivalente a setresuid(-1, euid,-1) y por tanto no modifica el identificador de usuario guardado.
Las mismas anotaciones se aplican a setegid.
CONFORME A
BSD 4.3