EUIDACCESS(3)

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
Like access(2), euidaccess() checks permissions and existence of the file identified by its argument pathname. However, whereas access(2) performs checks using the real user and group identifiers of the process, euidaccess() uses the effective identifiers.

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
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
euidaccess(), eaccess() | Sécurité des threads | MT-Safe

CONFORMITÉ
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 5.10 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org> et David Prévot <david@tilapin.org> Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.