Provided by: manpages-es_1.55-10_all bug

NOMBRE

       setfsgid - establece la identidad del grupo que accede al sistema de ficheros

SINOPSIS

       #include <unistd.h> /* glibc usa <sys/fsuid.h> */

       int setfsgid(uid_t fsgid);

DESCRIPCIÓN

       La  llamada al sistema setfsgid establece el identificador de grupo que el núcleo de Linux
       usa para comprobar todos los accesos al sistema de  ficheros.  Normalmente,  el  valor  de
       fsgid cambiará según el valor del grupo efectivo. De hecho, cada vez que el grupo efectivo
       cambie, fsgid también cambiará al nuevo valor del grupo efectivo.

       Las llamadas explícitas a setfsuid y setgsgid normalmente sólo se usan en  programas  como
       el  servidor  NFS  de  Linux, que necesitan cambiar el identificador de usuario y de grupo
       para acceder a un fichero, pero sin cambiar los identificadores real y efectivo. Un cambio
       en  el  identificador  real del usuario para un programa como el servidor NFS supondría un
       agujero de seguridad, al quedar expuesto a otras señales no deseadas. (véase más abajo.)

       setfsgid sólo tendrá éxito si quien lo invoca es el superusuario o si fsgid  coincide  con
       el  identificador  de  grupo  real,  con el identificador de grupo efectivo, con el setgid
       guardado o con el valor actual de fsgid.

VALOR DEVUELTO

       En caso de éxito, se devolverá el valor anterior de fsgid.  En caso de error, se devolverá
       el valor actual de fsgid.

CONFORME A

       setfsgid  es  específico  de  Linux  y no debería usarse en programas que se pretende sean
       portables.  Está presente desde la versión 1.1.44 de Linux y  en  libc  desde  la  versión
       4.7.6.

ERRORES

       No  se  devuelve  ningún  mensaje de error a quien lo invoca. Al menos, debería devolverse
       EPERM cuando todas las llamadas fallen.

OBSERVACIONES

       Cuando glibc determina que el argumento no es un ID de usuario válido, devuelve -1 y  pone
       en errno el valor EINVAL sin intentar la llamada al sistema.

       Observe  que  en  la  época  en la que esta llamada al sistema fue introducida, un proceso
       podía enviar una señal a un proceso con el mismo ID de usuario efectivo.  Hoy el manejo de
       los permisos sobre señales es ligeramente diferente.

VÉASE TAMBIÉN

       kill(2), setfsuid(2)