man seteuid (Appels systèmes) - Fixer les UID et GID effectifs.
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 pareil 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 en cours n'est pas Super-User, et l'argument euid (resp. egid) n'est pas l'UID (GID) réel, effectif ou sauvé.
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.
CONFORMITÉ
BSD 4.3
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.