NOM
setfsgid - Fixer le GID pour les vérifications d’accès au système de
fichiers
SYNOPSIS
#include <unistd.h> /* glibc utilise <sys/fsuid.h> */
int setfsgid(uid_t fsgid);
setfsgid() fixe le GID que le noyau Linux utilisera pour vérifier tous
les accès du processus au système de fichiers. Normalement, la valeur
de fsgid va masquer la valeur du GID effectif. En fait, si le GID
effectif est modifié, fsgid sera aussi modifié pour la nouvelle valeur
du GID effectif.
L’appel explicite de setfsuid(2) ou setfsgid() n’est normalement utile
qu’aux programmes tels que le serveur NFS qui ont besoin de modifier le
GID utilisé pour les accès aux fichiers sans changer véritablement
leurs GID réels et effectifs. Une modification des identifiants normaux
d’un programme comme un serveur NFS serait un trou de sécurité qui
l’exposerait à des signaux indésirables. Voir ci‐dessous.
setfsgid() ne réussira que si l’appelant est le superutilisateur ou si
fsgid correspond au GID réel, au GID effectif, au GID sauvé, ou encore
à la valeur actuelle de fsgid.
VALEUR RENVOYÉE
setfsgid() renvoie la valeur précédente fsgid s’il réussit. En cas
d’erreur la valeur actuelle de fsgid est renvoyée.
VERSIONS
Cet appel système est présent sous Linux depuis la version 1.2.
CONFORMITÉ
setfsgid() est spécifique à Linux et ne devrait pas être employé dans
des programmes destinés à être portables.
NOTES
Lorsque la bibliothèque glibc s’aperçoit que l’argument n’est pas un
GID valide, elle renvoie -1 et place EINVAL dans errno sans essayer
d’appeler l’appel système réel.
Notez que lors de l’introduction de cet appel système, un processus
pouvait envoyer un signal à un autre processus avec le même UID
effectif. De nos jours, les permissions pour les signaux sont
légèrement différentes.
BOGUES
Il n’y a pas de messages d’erreur renvoyés. Il serait bon d’avoir au
moins un code d’erreur EPERM en cas d’échec (dans le cas où l’appelant
n’a pas la capacité CAP_SETGID).
VOIR AUSSI
kill(2), setfsuid(2), capabilities(7), credentials(7)
COLOPHON
Cette page fait partie de la publication 3.23 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Julien Cristau <jcristau@debian.org> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».