NOM
setreuid, setregid - Fixer les UID et GID effectifs et/ou réels.
SYNOPSIS
#include <sys/types.h>
#include <unistd.h>
int setreuid(uid_t ruid, uid_t euid);
int setregid(gid_t rgid, gid_t egid);
Exigences de macros de test de fonctionnalités pour la glibc (voir
feature_test_macros(7)) :
setreuid(), setregid() : _BSD_SOURCE || _XOPEN_SOURCE >= 500
setreuid() fixe les ID d’utilisateur effectif et réel du processus
appelant.
Fournir une valeur -1 pour l’un des arguments demande au système de ne
pas modifier l’ID correspondant
Les processus non privilégiés peuvent seulement fixer leur UID effectif
à la valeur de l’UID réel, de l’UID effectif ou de l’UID sauvé.
POSIX : il n’est pas spécifié si les processus non privilégiés peuvent
fixer l’UID réel à la valeur de l’UID réel, de l’UID effectif ou de
l’UID effectif sauvé.
Linux : les utilisateurs non privilégiés peuvent seulement fixer l’UID
réel à la valeur de l’UID réel ou de l’UID effectif.
Linux : si l’UID réel est changé, ou si l’UID effectif est rempli avec
une valeur différente de l’UID réel précédent, le set-uid sauvé sera
également rempli avec la valeur du nouvel UID effectif.
De manière analogue, setregid() fixe les ID de groupe du processus
appelant, et toutes les remarques précédentes s’appliquent, en
remplaçant GID par UID.
VALEUR RENVOYÉE
En cas de réussite, zéro est renvoyé, sinon -1 est renvoyé et errno
contient le code d’erreur.
ERREURS
EPERM Le processus appelant n’est pas privilégié (sous Linux : n’a pas
la capacité CAP_SETUID dans le cas de setreuid(), ou la capacité
CAP_SETGID dans le cas de setregid()), des modifications ont été
demandées autres que (i) l’échange de l’UID (resp. GID) effectif
avec l’UID (GID) réel, (ii) la copie d’un UID (GID) dans un
autre, ou (iii) le remplissage de l’UID (GID) effectif avec la
valeur de l’UID (GID) sauvé.
CONFORMITÉ
POSIX.1-2001, BSD 4.3 (les fonctions setreuid() et setregid() sont
apparues dans BSD 4.2).
NOTES
Fixer l’UID (GID) effectif avec la valeur de l’UID (GID) sauvé est
possible depuis Linux 1.1.37 (1.1.38).
VOIR AUSSI
getgid(2), getuid(2), seteuid(2), setgid(2), setresuid(2), setuid(2),
capabilities(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> ».