SETEUID(2)

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

VÉASE TAMBIÉN
geteuid(2), setuid(2), setreuid(2), setresuid(2)