setreuid

Autres langues

Langue: fr

Version: 18 juillet 2003 (openSuse - 09/10/07)

Section: 2 (Appels système)

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);

DESCRIPTION

setreuid fixe les ID d'utilisateur effectifs et réels du processus appelant. Les utilisateurs non privilégiés peuvent seulement fixer leur UID réel à la valeur de l'UID réel ou de l'UID effectif, et ne peuvent fixer leur UID effectif qu'à la valeur de l'UID réel, de l'UID effectif ou de l'UID sauvé.

Fournir une valeur -1 pour l'un des arguments demande au système de ne pas modifier l'ID correspondant

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, l'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 n'est pas Super-User, 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 di l'UID (GID) effectif avec la valeur de l'UID (GID) sauvé.

NOTES

Fixer l'UID (GID) sauvé est possible de Linux 1.1.37 (1.1.38).

CONFORMITÉ

BSD 4.3 (Les fonctions setreuid et setregid sont apparues dans BSD 4.2).

VOIR AUSSI

getuid(2), getgid(2), setuid(2), setgid(2), seteuid(2), setresuid(2)

TRADUCTION

Christophe Blaess, 1996-2003.