NOM¶
euidaccess, eaccess - Vérifier les permissions utilisateur d'un fichier
SYNOPSIS¶
#define _GNU_SOURCE /* Consultez feature_test_macros(7) */
#include <unistd.h>
int euidaccess(const char *pathname, int mode);
int eaccess(const char *pathname, int mode);
DESCRIPTION¶
Comme
access(2),
euidaccess() vérifie les permissions et
l'existence du fichier identifié par
pathname. Cependant,
là où
access(2) effectue une vérification avec les
identifiants réels d'utilisateur et de groupe du processus,
euidaccess() utilise les identifiants effectifs.
mode est un masque constitué d'un ou plusieurs attributs
R_OK,
W_OK,
X_OK et
F_OK qui ont le même
sens qu'avec
access(2).
eaccess() est un synonyme de
euidaccess(), fourni par
compatibilité avec d'autres systèmes.
VALEUR RENVOYÉE¶
En cas de succès (toutes les permissions demandées sont
autorisées), 0 est renvoyé. En cas d'erreur (au moins une
permission de
mode est interdite ou d'autres erreurs se sont
produites), -1 est renvoyé et
errno contient le code d'erreur.
ERREURS¶
Identique à
access(2).
VERSIONS¶
La fonction
eaccess() a été ajoutée à la
version 2.4 de la glibc.
ATTRIBUTS¶
Multithreading (voir pthreads(7))¶
Les fonctions
euidaccess() et
eaccess() sont sûres dans un
contexte multithread.
Ces fonctions ne sont pas standards. Quelques autres systèmes
possèdent la fonction
eaccess().
NOTES¶
Attention : l'utilisation de cette fonction pour vérifier
les permissions d'un processus sur un fichier avant d'effectuer quelques
opérations basées sur cette information conduit à une
situation de compétition (« race
condition ») : les permissions du fichier peuvent changer
entre les deux étapes. Généralement, il est plus
judicieux d'exécuter l'opération souhaitée et de
gérer toutes les erreurs de permissions qui se produisent.
Cette fonction déférence toujours les liens symboliques. Si vous
devez vérifier les permissions d'un lien symbolique, utilisez
faccessat(2) avec les drapeaux
AT_EACCESS et
AT_SYMLINK_NOFOLLOW.
VOIR AUSSI¶
access(2),
chmod(2),
chown(2),
faccessat(2),
open(2),
setgid(2),
setuid(2),
stat(2),
credentials(7),
path_resolution(7)
COLOPHON¶
Cette page fait partie de la publication 3.65 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¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
<
http://po4a.alioth.debian.org/> par l'équipe de traduction
francophone au sein du projet perkamon
<
http://perkamon.alioth.debian.org/>.
Florentin Duneau et l'équipe francophone de traduction de
Debian (2006-2009).
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> ».