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

NOMBRE

       setfsuid - establece la identidad del usuario que accede al sistema de ficheros

SINOPSIS

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

       int setfsuid(uid_t fsuid);

DESCRIPCIÓN

       La  llamada  al  sistema  setfsuid  establece el identificador de usuario que el núcleo de Linux usa para
       comprobar todos los accesos al sistema de ficheros. Normalmente, el valor  de  fsuid  cambiará  según  el
       valor  del usuario efectivo. De hecho, cada vez que el usuario efectivo cambie, fsuid también cambiará al
       nuevo valor del usuario 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.)

       setfsuid sólo tendrá éxito si quien lo invoca es el superusuario o si fsuid coincide con el identificador
       de usuario real, con el identificador de usuario efectivo, con el setuid guardado o con el  valor  actual
       de fsuid.

VALOR DEVUELTO

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

CONFORME A

       setfsuid 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), setfsgid(2)

Linux 1.3.15                                      23 julio 2002                                      SETFSUID(2)