seteuid

Autres langues

Langue: fr

Version: 27 mai 2004 (mandriva - 01/05/08)

Section: 2 (Appels système)

NOM

seteuid, setegid - Fixer les UID et GID effectifs

SYNOPSIS

#include <sys/types.h>
#include <unistd.h>

int seteuid(uid_t euid);
int setegid(gid_t egid);

DESCRIPTION

seteuid() Fixe l'UID effectif du processus en cours. Les processus non privilégiés peuvent uniquement fixer leur UID effectif à la valeur de leur UID réel, de leur UID effectif ou de leur UID sauvé.

Ceci fonctionne exactement de la même façon avec setegid() en raisonnant en terme de groupe (GID) au lieu d'utilisateur (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 privilégié (sous Linux : n'a pas la capacité CAP_SETUID dans le cas de seteuid(), ou la capacité CAP_SETGID dans le cas de setegid()), et l'argument euid (resp. egid) n'est pas l'UID (GID) réel, effectif ou sauvé.

CONFORMITÉ

BSD 4.3, POSIX.1-2001.

NOTES

Fixer l'UID (GID) effectif à la valeur de l'UID (GID) sauvé est possible depuis Linux 1.1.37 (1.1.38). Sur un système Unix inconnu, il faut vérifier la présence de la constante _POSIX_SAVED_IDS.

Sous libc 4, libc 5, et glibc 2.0, seteuid(euid) est équivalent à setreuid(-1, euid) et modifie ainsi l'UID sauvé. Sous glibc 2.1, c'est équivalent à setresuid(-1, euid,-1) et ne modifie donc pas l'UID sauvé. Les mêmes remarques sont valables pour setegid().

VOIR AUSSI

geteuid(2), setresuid(2), setreuid(2), setuid(2), capabilities(7), credentials(7)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 4 juin 2001 et révisée le 27 novembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 seteuid ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.