Provided by: manpages-fr-dev_3.57d1p1-1_all bug

NOM

       fchownat  -  Modifier l'appartenance d'un fichier relativement à un descripteur de fichier
       de répertoire

SYNOPSIS

       #include <fcntl.h> /* Définition des constantes AT_* */
       #include <unistd.h>

       int fchownat(int dirfd, const char *pathname,
                    uid_t owner, gid_t group, int flags);

   Exigences   de   macros   de   test   de   fonctionnalités   pour    la    glibc    (consultez
   feature_test_macros(7)) :

       fchownat() :
           Depuis la glibc 2.10 :
               _XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L
           Avant la glibc 2.10 :
               _ATFILE_SOURCE

DESCRIPTION

       L'appel  système  fchownat()  fonctionne exactement comme chown(2), les seules différences
       étant celles décrites dans cette page.

       Si pathname est un chemin relatif, il est interprété par rapport au  répertoire  référencé
       par  le  descripteur  de  fichier  dirfd (plutôt que relativement au répertoire de travail
       courant du processus appelant, comme cela est fait par chown(2) pour un chemin relatif).

       Si pathname est relatif et  si  dirfd  est  la  valeur  spéciale  AT_FDCWD,  pathname  est
       interprété  comme  étant  relatif  au  répertoire  courant  du  processus  appelant (comme
       chown(2)).

       Si pathname est un chemin absolu, dirfd est ignoré.

       L'argument flags est un masque  construit  en  réalisant  un  OU  logique  entre  zéro  ou
       plusieurs des valeurs suivantes :

       AT_EMPTY_PATH (depuis Linux 2.6.39)
              Si  pathname  est  une  chaîne vide, opérer sur le fichier référencé par dirfd (qui
              peut avoir été obtenu en utilisant open(2) avec le drapeau O_PATH).  Dans  ce  cas,
              dirfd peut référer à tout type de fichier, pas uniquement un répertoire.

       AT_SYMLINK_NOFOLLOW
              Si  pathname  est  un  lien  symbolique,  ne pas le déréférencer, mais renvoyer des
              informations sur le lien lui-même, comme le fait lchown(2). (Par défaut, fchownat()
              suit les liens symboliques, comme chown(2).)

VALEUR RENVOYÉE

       S'il  réussit,  fchownat()  renvoie  zéro. En cas d'erreur, il renvoie -1 et remplit errno
       avec la valeur d'erreur.

ERREURS

       Les mêmes erreurs qui apparaissent pour chown(2) peuvent apparaître pour  fchownat().  Les
       erreurs supplémentaires suivantes peuvent également se produire pour fchownat() :

       EBADF  dirfd n'est pas un descripteur de fichier valable.

       EINVAL flags contient un attribut invalide.

       ENOTDIR
              pathname  est relatif, et le descripteur de fichier dirfd est associé à un fichier,
              pas à un répertoire.

VERSIONS

       fchownat() a été ajouté au noyau Linux dans sa version 2.6.16 ; la glibc le gère depuis la
       version 2.4.

CONFORMITÉ

       POSIX.1-2008. Un appel système similaire existe sur Solaris.

NOTES

       Consultez openat(2) pour une explication de la nécessité de fchownat().

VOIR AUSSI

       chown(2), openat(2), path_resolution(7), symlink(7)

COLOPHON

       Cette  page  fait partie de la publication 3.57 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/>.

       Julien Cristau 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> ».