Other Alias
setreuidSINOPSIS
#include <sys/types.h>#include <unistd.h>
int setreuid(uid_t ruid, uid_t euid);
int setregid(gid_t rgid, gid_t egid);
DESCRIPCIÓN
setreuid define el identificador de usuario real y efectivo del proceso actual. Los usuarios sin privilegios solamente pueden cambiar el identificador de usuario real por el identificador de usuario real o el identificador de usuario efectivo, y el identificador de usuario efectivo por el identificador de usuario real, el identificador de usuario efectivo o el identificador de usuario guardado.Dando el valor -1 para el valor del identificador de usuario ya sea el real o el efectivo, fuerza al sistema a dejar dicho identificador sin cambios.
Si el identificador de usuario real es cambiado, o el identificador de usuario efectivo se pone a un valor distinto del identificador de usuario real previo, el identificador de usuario guardado será puesto al nuevo identificador de usuario efectivo.
De manera completamente análoga, setregid define el identificador de grupo real y efectivo del proceso actual, aplicándose todo lo comentado arriba con "grupo" en lugar de "usuario".
VALOR DEVUELTO
Si hay éxito, se devuelve cero. Si hay error, se devuelve -1, y errno se actualiza de la forma apropiada.ERRORES
- EPERM
- El proceso actual no es el superusuario y especifica un cambio que no es (1) intercambiar el identificador de usuario (grupo) efectivo con el real, o (2) poner el valor de uno al del otro, o (3) poner el identificador de usuario (grupo) efectivo al valor del identificador de usuario (grupo) guardado.