SINOPSIS
#include <sys/types.h>#include <unistd.h>
int setgid(gid_t gid);
DESCRIPCIÓN
setgid establece el ID de grupo efectivo del proceso en curso. Si quien llama a la función es el súper-usuario, se ponen también las IDs de grupo real y salvado.Bajo Linux, setgid está implementada como la versión POSIX con la característica _POSIX_SAVED_IDS. Esto permite que un programa SGID (distinto de root) renuncie a todos sus privilegios de grupos, haga algún trabajo no privilegiado, y luego recupere su ID de grupo efectivo original de una manera segura.
VALOR DEVUELTO
En caso de éxito, se devuelve cero. En caso de error, se devuelve -1, y se pone un valor apropiado en errno.ERRORES
- EPERM
- El usuario no es el súper-usuario (no tiene la capacidad CAP_SETGID), y gid no concuerda con el ID de grupo efectivo ni con el setgid salvado del proceso que llama a la función.