Linux |
CentOS 4.8 |
|
seteuid(2) |
seteuid, setegid − Fixer les UID et GID effectifs. |
#include <sys/types.h> int seteuid(uid_t euid); |
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). |
En cas de réussite, zéro est renvoyé, sinon −1 est renvoyé et errno contient le code d’erreur. |
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é. |
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. |
BSD 4.3 |
geteuid(2), setuid(2), setreuid(2), setresuid(2) |
Christophe Blaess, 2001. |
seteuid(2) |