Provided by: manpages-fr-dev_4.23.1-1_all bug

NOM

       setgid - Définir l'identifiant de groupe

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       int setgid(gid_t gid);

DESCRIPTION

       setgid() définit le GID effectif du processus appelant. Si l'appelant est privilégié (plus
       précisément, s'il a la capacité CAP_SETGID dans son espace de noms), les GID réel et sauvé
       sont également définis.

       Sous  Linux setgid() est implémenté comme la version POSIX avec l'option _POSIX_SAVED_IDS.
       Cela permet à un programme Set-GID (autre que root) d'abandonner tous  ses  privilèges  de
       groupe,  d'effectuer  des  tâches  non  privilégiées,  et de retrouver son GID effectif de
       manière sécurisée.

VALEUR RENVOYÉE

       En cas de succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno  est  définie
       pour préciser l'erreur.

ERREURS

       EINVAL L'identifiant  de groupe indiqué dans gid n'est pas valable dans cet espace de noms
              utilisateur.

       EPERM  Le processus appelant n'est pas privilégié (ne possède pas la  capacité  CAP_SETGID
              dans  son  espace  de noms) et gid ne correspond ni au GID réel, ni au GID sauvé du
              processus appelant.

VERSIONS

   Différences entre bibliothèque C et noyau
       Au niveau du noyau, les identifiants utilisateur et de groupe représentent un attribut par
       thread.  Cependant,  POSIX  exige  que tous les threads d'un processus partagent les mêmes
       droits. L'implémentation de thread de NPTL  gère  les  exigences  de  POSIX  à  l'aide  de
       fonctions  enveloppes  autour  des  appels  système  qui  modifient  les UID et les GID du
       processus. Ces fonctions enveloppe (notamment celle  autour  de  setgid())  utilisent  une
       technique  fondée  sur  le  signal pour s'assurer que lorsqu'un thread modifie les droits,
       tous les autres threads du processus changent leurs autorisations. Pour des détails,  voir
       nptl(7).

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       POSIX.1-2001, SVr4.

       L'appel  système  setgid()  originel de Linux ne gérait que des identifiants de groupe sur
       16 bits.  En  conséquence,  Linux 2.4  a  ajouté  setgid32()  qui  prend  en  charge   des
       identifiants  32 bits.  La  fonction  setgid() de la glibc qui l'encapsule gère de manière
       transparente ces différences entre noyaux.

VOIR AUSSI

       getgid(2), setegid(2), setregid(2), capabilities(7), credentials(7), user_namespaces(7)

TRADUCTION

       La traduction française de cette  page  de  manuel  a  été  créée  par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,  Stéphan  Rafin  <stephan.rafin@laposte.net>, Thierry
       Vignaud <tvignaud@mandriva.com>, François Micaux, Alain  Portal  <aportal@univ-montp2.fr>,
       Jean-Philippe    Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-
       luc.coulon@wanadoo.fr>,   Julien    Cristau    <jcristau@debian.org>,    Thomas    Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,  Denis
       Barbier   <barbier@debian.org>,   David   Prévot  <david@tilapin.org>,  Cédric  Boutillier
       <cedric.boutillier@gmail.com>, Frédéric Hantrais  <fhantrais@gmail.com>  et  Jean-Philippe
       MENGUAL <jpmengual@debian.org>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General
       Public  License  version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   concernant   les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.