perkamon - en to fr translation catalogue (78 entries)

note: type: TH
en: 2021-03-22
fr: 22 mars 2021

note: type: TH
en: Linux Programmer's Manual
fr: Manuel du programmeur Linux

note: type: SH
en: NAME
fr: NOM

note: type: Plain text
en: ftw, nftw - file tree walk
fr: ftw, nftw - Parcourir des arborescences de fichiers

note: type: Plain text
en: B<int nftw(const char *>I<dirpath>B<,>
    B<        int (*>I<fn>B<)(const char *>I<fpath>B<, const struct stat *>I<sb>B<,>
    B<                  int >I<typeflag>B<, struct FTW *>I<ftwbuf>B<),>
    B<        int >I<nopenfd>B<, int >I<flags>B<);>
fr: B<int nftw(const char *>I<chemin_répertoire>B<,>
    B<        int (*>I<fn>B<)(const char *>I<chemin_fichier>B<, const struct stat *>I<sb>B<,>
    B<                  int >I<symbole_type>B<, struct FTW *>I<tampon_ftw>B<),>
    B<        int >I<nb_descripteurs_fichier_ouverts>B<, int >I<drapeaux>B<);>

note: type: Plain text
en: B<int ftw(const char *>I<dirpath>B<,>
    B<        int (*>I<fn>B<)(const char *>I<fpath>B<, const struct stat *>I<sb>B<,>
    B<                  int >I<typeflag>B<),>
    B<        int >I<nopenfd>B<);>
fr: B<int ftw(const char *>I<chemin_répertoire>B<,>
    B<        int (*>I<fn>B<) (const char *>I<chemin_fichier>B<, const struct stat *>I<sb>B<,>
    B<                   int >I<symbole_type>B<),>
    B<        int >I<nb_descripteurs_fichier_ouverts>B<);>

note: type: Plain text
en: Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):
fr: Exigences de macros de test de fonctionnalités pour la glibc (consulter B<feature_test_macros>(7)) :

note: type: Plain text
en: B<nftw>():
fr: B<nftw>() :

note: type: Plain text
en: B<nftw>()  walks through the directory tree that is located under the directory I<dirpath>, and calls I<fn>() once for each entry in the tree.  By default, directories are handled before the files and subdirectories they contain (preorder traversal).
fr: La fonction B<nftw>() parcourt l'arborescence de fichiers située dans le répertoire I<chemin_répertoire> et appelle I<fn>() une fois pour chaque entrée de l'arborescence. Par défaut, les répertoires sont traités avant les fichiers et sous-répertoires qu'ils contiennent (méthode de parcours « preorder »).

note: type: Plain text
en: To avoid using up all of the calling process's file descriptors, I<nopenfd> specifies the maximum number of directories that B<nftw>()  will hold open simultaneously.  When the search depth exceeds this, B<nftw>()  will become slower because directories have to be closed and reopened.  B<nftw>()  uses at most one file descriptor for each level in the directory tree.
fr: Afin d'éviter d'utiliser tous les descripteurs de fichier du processus appelant, I<nb_descripteurs_fichier_ouverts> indique le nombre maximal de répertoires que B<nftw>() peut ouvrir simultanément. Lorsque la profondeur de recherche est supérieure à cette valeur, B<nftw>() ralentit car les répertoires doivent être fermés puis réouverts. B<nftw>() utilise au plus un descripteur de fichier pour chaque niveau dans l'arborescence des fichiers.

note: type: Plain text
en: For each entry found in the tree, B<nftw>()  calls I<fn>() with four arguments: I<fpath>, I<sb>, I<typeflag>, and I<ftwbuf>.  I<fpath> is the pathname of the entry, and is expressed either as a pathname relative to the calling process's current working directory at the time of the call to B<nftw>(), if I<dirpath> was expressed as a relative pathname, or as an absolute pathname, if I<dirpath> was expressed as an absolute pathname.  I<sb> is a pointer to the I<stat> structure returned by a call to B<stat>(2)  for I<fpath>.
fr: Pour chaque entrée trouvée dans l'arbre, B<nftw>() appelle I<fn>() avec quatre arguments\ : I<chemin_fichier>, I<sb>, I<symbole_type> et I<tampon_ftw>. I<chemin_fichier> est le chemin de l'entrée ; il est défini comme un chemin relatif au répertoire de travail actuel du processus appelant au moment de l'appel à B<nftw>() si I<chemin_répertoire> est un chemin relatif, ou comme un chemin absolu si I<chemin_répertoire> est un chemin absolu. I<sb> est un pointeur vers la structure I<stat> renvoyée par un appel à B<stat>(2) pour I<chemin_fichier>.

note: type: Plain text
en: The I<typeflag> argument passed to I<fn>()  is an integer that has one of the following values:
fr: L'argument I<symbole_type> passé à I<fn>() est un entier qui peut prendre une des valeurs suivantes :

note: type: Plain text
en: I<fpath> is a regular file.
fr: I<chemin_fichier> est un fichier ordinaire.

note: type: Plain text
en: I<fpath> is a directory.
fr: I<chemin_fichier> est un répertoire.

note: type: Plain text
en: I<fpath> is a directory which can't be read.
fr: I<chemin_fichier> est un répertoire qui ne peut être lu.

note: type: Plain text
en: I<fpath> is a directory, and B<FTW_DEPTH> was specified in I<flags>.  (If B<FTW_DEPTH> was not specified in I<flags>, then directories will always be visited with I<typeflag> set to B<FTW_D>.)  All of the files and subdirectories within I<fpath> have been processed.
fr: I<chemin_fichier> est un répertoire et B<FTW_DEPTH> a été défini dans I<drapeaux> (si B<FTW_DEPTH> n’est pas défini dans I<drapeaux>, alors les répertoires seront toujours visités avec I<symbole_type> défini à B<FTW_D>). Tous les fichiers et sous-répertoires dans I<chemin_fichier> ont été traités.

note: type: Plain text
en: The B<stat>(2)  call failed on I<fpath>, which is not a symbolic link.  The probable cause for this is that the caller had read permission on the parent directory, so that the filename I<fpath> could be seen, but did not have execute permission, so that the file could not be reached for B<stat>(2).  The contents of the buffer pointed to by I<sb> are undefined.
fr: L'appel B<stat>(2) a échoué sur I<chemin_fichier> qui n'est pas un lien symbolique. Cela est probablement dû au fait que l’appelant avait les droits de lecture sur le répertoire parent de telle sorte que I<chemin_fichier> était visible, mais n’avait pas les droits d’exécution, et donc le fichier ne pouvait pas être atteint pour B<stat>(2). Le contenu du tampon pointé par I<sb> est indéterminé.

note: To obtain the definition of this constant from .IR <ftw.h> , either .B _BSD_SOURCE must be defined, or .BR _XOPEN_SOURCE must be defined with a value of 500 or more. type: Plain text
en: I<fpath> is a symbolic link, and B<FTW_PHYS> was set in I<flags>.
fr: I<chemin_fichier> est un lien symbolique et B<FTW_PHYS> a été défini dans I<drapeaux>.

note: type: Plain text
en: I<fpath> is a symbolic link pointing to a nonexistent file.  (This occurs only if B<FTW_PHYS> is not set.)  In this case the I<sb> argument passed to I<fn>()  contains information returned by performing B<lstat>(2)  on the "dangling" symbolic link.  (But see BUGS.)
fr: I<chemin_fichier> est un lien symbolique pointant vers un fichier qui n'existe pas (ce qui ne se produira que si B<FTW_PHYS> n'est pas défini). Dans ce cas, l'argument I<sb> passé à I<fn>() contiendra les informations renvoyées par l'exécution de B<lstat>(2) sur le lien symbolique pointant nulle part (voir à ce sujet BOGUES).

note: type: Plain text
en: The fourth argument (I<ftwbuf>)  that B<nftw>()  supplies when calling I<fn>()  is a pointer to a structure of type I<FTW>:
fr: Le quatrième argument (I<tampon_ftw>), spécifié par B<nftw>() lors de l'appel de I<fn>, est un pointeur vers une structure du type I<FTW>\ :

note: type: Plain text
en: I<base> is the offset of the filename (i.e., basename component)  in the pathname given in I<fpath>.  I<level> is the depth of I<fpath> in the directory tree, relative to the root of the tree (I<dirpath>, which has depth 0).
fr: I<base> est le décalage du nom de fichier (c’est-à-dire le composant «\ basename\ ») du chemin donné par I<chemin_fichier>. I<level> est la profondeur de I<chemin_fichier> dans l'arbre des répertoires, relative à la racine de l'arbre (I<chemin_répertoire> qui a une profondeur de B<0>).

note: type: Plain text
en: To stop the tree walk, I<fn>() returns a nonzero value; this value will become the return value of B<nftw>().  As long as I<fn>() returns 0, B<nftw>()  will continue either until it has traversed the entire tree, in which case it will return zero, or until it encounters an error (such as a B<malloc>(3)  failure), in which case it will return -1.
fr: Pour arrêter le parcours de l'arborescence des fichiers, la fonction I<fn>() renvoie une valeur différente de B<0>, qui deviendra la valeur de retour de B<nftw>(). Tant que I<fn>() renvoie B<0>, B<nftw>() continuera jusqu'à la fin du parcours de l'arborescence, et dans ce cas renverra B<0>, ou jusqu'à ce qu'une erreur se produise (comme un échec de B<malloc>(3)) et dans ce cas renverra B<-1>.

note: type: Plain text
en: Because B<nftw>()  uses dynamic data structures, the only safe way to exit out of a tree walk is to return a nonzero value from I<fn>().  To allow a signal to terminate the walk without causing a memory leak, have the handler set a global flag that is checked by I<fn>().  I<Don't> use B<longjmp>(3)  unless the program is going to terminate.
fr: Comme B<nftw>() utilise des structures de données allouées dynamiquement, la seule manière propre de sortir d'un parcours d'arborescence consiste à faire que I<fn>() renvoie une valeur différente de B<0>. Pour permettre à un signal de terminer le parcours sans causer de fuite de mémoire, utilisez un gestionnaire qui définit un attribut global vérifié par I<fn>(). I<N'utilisez pas> B<longjmp>(3) à moins que le programme ne soit sur le point de se terminer.

note: type: Plain text
en: The I<flags> argument of B<nftw>()  is formed by ORing zero or more of the following flags:
fr: L'argument I<drapeaux> de B<nftw>() est un OU binaire entre zéro ou plusieurs des attributs suivants\ :

note: type: TP
en: B<FTW_ACTIONRETVAL> (since glibc 2.3.3)
fr: B<FTW_ACTIONRETVAL> (depuis la glibc\ 2.3.3)

note: type: Plain text
en: If this glibc-specific flag is set, then B<nftw>()  handles the return value from I<fn>()  differently.  I<fn>()  should return one of the following values:
fr: Si cet attribut, spécifique à la glibc, est positionné, alors B<nftw>() gère la valeur de retour de I<fn>() différemment. I<fn>() doit renvoyer l'une des valeurs suivantes\ :

note: type: Plain text
en: Instructs B<nftw>()  to continue normally.
fr: B<nftw>() doit continuer normalement.

note: If \fBFTW_DEPTH\fP is set, the entry's parent directory is processed next (with \fIflag\fP set to \fBFTW_DP\fP). type: Plain text
en: If I<fn>() returns this value, then siblings of the current entry will be skipped, and processing continues in the parent.
fr: Si I<fn>() renvoie cette valeur, alors les entrées de même niveau que l'entrée courante seront sautées, et la procédure continuera avec le parent.

note: type: Plain text
en: If I<fn>() is called with an entry that is a directory (I<typeflag> is B<FTW_D>), this return value will prevent objects within that directory from being passed as arguments to I<fn>().  B<nftw>()  continues processing with the next sibling of the directory.
fr: Si I<fn>() est appelée avec une entrée qui est un répertoire (I<symbole_type> a pour valeur B<FTW_D>), cette valeur de retour empêchera le passage des objets de ce répertoire comme arguments à I<fn>() et B<nftw>() continuera avec l'entrée suivante de même niveau du répertoire.

note: type: Plain text
en: Causes B<nftw>()  to return immediately with the return value B<FTW_STOP>.
fr: B<nftw>() doit quitter immédiatement avec la valeur de retour B<FTW_STOP>.

note: type: Plain text
en: Other return values could be associated with new actions in the future; I<fn>() should not return values other than those listed above.
fr: D'autres valeurs de retour pourront être associées à de nouvelles actions dans le futur\ ; I<fn> ne devrait renvoyer que les valeurs citées ci-dessus.

note: type: Plain text
en: The feature test macro B<_GNU_SOURCE> must be defined (before including I<any> header files)  in order to obtain the definition of B<FTW_ACTIONRETVAL> from I<E<lt>ftw.hE<gt>>.
fr: La macro de test B<_GNU_SOURCE> doit être définie (avant I<toute> inclusion de fichiers d'en-tête) afin d'obtenir la définition de B<FTW_ACTIONRETVAL> depuis I<E<lt>ftw.hE<gt>>.

note: type: Plain text
en: If set, do a B<chdir>(2)  to each directory before handling its contents.  This is useful if the program needs to perform some action in the directory in which I<fpath> resides.  (Specifying this flag has no effect on the pathname that is passed in the I<fpath> argument of I<fn>.)
fr: Si cet attribut est défini, faire un B<chdir>(2) vers chaque répertoire avant de traiter son contenu. Cela est utile si le programme doit exécuter des actions dans le répertoire où I<chemin_fichier> réside (préciser ce drapeau n’a aucun effet sur le nom de chemin passé dans l’argument de I<chemin_fichier> de I<fn>).

note: type: Plain text
en: If set, do a post-order traversal, that is, call I<fn>() for the directory itself I<after> handling the contents of the directory and its subdirectories.  (By default, each directory is handled I<before> its contents.)
fr: Si cet attribut est défini, faire une recherche «\ postorder\ »\ ; c'est-à-dire, appeler I<fn>() pour le répertoire lui-même I<après> avoir traité son contenu et celui de ses sous-répertoires (par défaut chaque répertoire est traité I<avant> son contenu).

note: type: Plain text
en: If set, stay within the same filesystem (i.e., do not cross mount points).
fr: Si cet attribut est défini, rester dans le même système de fichiers (c’est-à-dire, ne pas traverser vers d'autres points de montage).

note: type: Plain text
en: If set, do not follow symbolic links.  (This is what you want.)  If not set, symbolic links are followed, but no file is reported twice.
fr: Si cet attribut est défini, ne pas suivre les liens symboliques (c'est ce que l'on veut). S'il n'est pas défini, les liens symboliques sont suivis, mais aucun fichier n'est traité plus d'une fois.

note: type: Plain text
en: If B<FTW_PHYS> is not set, but B<FTW_DEPTH> is set, then the function I<fn>()  is never called for a directory that would be a descendant of itself.
fr: Si B<FTW_PHYS> n'est pas défini, mais si B<FTW_DEPTH> l'est, alors la fonction I<fn>() n'est jamais appelée pour un répertoire qui ferait partie de ses propres descendants.

note: type: SS
en: ftw()
fr: B<ftw()>

note: type: Plain text
en: B<ftw>()  is an older function that offers a subset of the functionality of B<nftw>().  The notable differences are as follows:
fr: B<ftw>() est une fonction plus ancienne qui prend en charge un sous-ensemble des fonctionnalités de B<nftw>(). Les différences notables sont les suivantes :

note: type: IP
en: *
fr: –

note: type: Plain text
en: B<ftw>()  has no I<flags> argument.  It behaves the same as when B<nftw>()  is called with I<flags> specified as zero.
fr: B<ftw>() n'a pas d'argument I<drapeaux>. Elle se comporte comme B<nftw>() lorsque cette dernière est appelée avec l'argument I<drapeaux> défini à zéro.

note: type: Plain text
en: The callback function, I<fn>(), is not supplied with a fourth argument.
fr: La fonction de rappel I<fn>() est fournie sans le quatrième argument.

note: type: Plain text
en: The range of values that is passed via the I<typeflag> argument supplied to I<fn>()  is smaller: just B<FTW_F>, B<FTW_D>, B<FTW_DNR>, B<FTW_NS>, and (possibly)  B<FTW_SL>.
fr: Le jeu de valeurs passées à l'aide de l'argument I<symbole_type> à I<fn>() est plus petit : les seules valeurs valables sont B<FTW_F>, B<FTW_D>, B<FTW_DNR>, B<FTW_NS> et (peut-être) B<FTW_SL>.

note: type: SH
en: RETURN VALUE
fr: VALEUR RENVOYÉE

note: type: Plain text
en: These functions return 0 on success, and -1 if an error occurs.
fr: Ces fonctions renvoient B<0> en cas de succès et B<-1> en cas d'erreur.

note: type: Plain text
en: If I<fn>() returns nonzero, then the tree walk is terminated and the value returned by I<fn>()  is returned as the result of B<ftw>()  or B<nftw>().
fr: Si I<fn>() renvoie une valeur différente de B<0>, alors le parcours de l'arbre se termine et la valeur renvoyée par I<fn>() est renvoyée comme résultat de B<ftw>() ou B<nftw>().

note: type: Plain text
en: If B<nftw>()  is called with the B<FTW_ACTIONRETVAL> flag, then the only nonzero value that should be used by I<fn>()  to terminate the tree walk is B<FTW_STOP>, and that value is returned as the result of B<nftw>().
fr: Si B<nftw>() est appelée avec l’attribut B<FTW_ACTIONRETVAL>, alors la seule valeur différente de B<0> qui pourra être utilisée par I<fn>() pour terminer le parcours de l'arbre est B<FTW_STOP>, et cette valeur est renvoyée comme résultat de B<nftw>().

note: type: Plain text
en: B<nftw>()  is available under glibc since version 2.1.
fr: La fonction B<nftw>() est disponible depuis la version 2.1 de la glibc.

note: type: SH
en: ATTRIBUTES
fr: ATTRIBUTS

note: type: Plain text
en: For an explanation of the terms used in this section, see B<attributes>(7).
fr: Pour une explication des termes utilisés dans cette section, consulter B<attributes>(7).

note: type: tbl table
en: Attribute
fr: Attribut

note: type: tbl table
en: Value
fr: Valeur

note: type: tbl table
en: Thread safety
fr: Sécurité des threads

note: type: SH
en: CONFORMING TO
fr: CONFORMITÉ

note: type: Plain text
en: POSIX.1-2001, POSIX.1-2008, SVr4, SUSv1.  POSIX.1-2008 marks B<ftw>()  as obsolete.
fr: POSIX.1-2001, POSIX.1-2008, SVr4, SUSv1. POSIX.1-2008 marque B<ftw>() comme étant obsolète.

note: type: Plain text
en: POSIX.1-2008 notes that the results are unspecified if I<fn> does not preserve the current working directory.
fr: POSIX.1-2008 indique que les résultats sont imprévisibles si I<fn> ne préserve pas le répertoire de travail actuel.

note: type: Plain text
en: The function B<nftw>()  and the use of B<FTW_SL> with B<ftw>()  were introduced in SUSv1.
fr: La fonction B<nftw>() et l'utilisation de B<FTW_SL> avec B<ftw>() ont été introduites dans SUSv1.

note: type: Plain text
en: In some implementations (e.g., glibc), B<ftw>()  will never use B<FTW_SL>, on other systems B<FTW_SL> occurs only for symbolic links that do not point to an existing file, and again on other systems B<ftw>()  will use B<FTW_SL> for each symbolic link.  If I<fpath> is a symbolic link and B<stat>(2)  failed, POSIX.1-2008 states that it is undefined whether B<FTW_NS> or B<FTW_SL> is passed in I<typeflag>.  For predictable results, use B<nftw>().
fr: Dans certaines implémentations (par exemple la glibc), B<ftw>() n'utilise jamais B<FTW_SL> ; sur d'autres systèmes, B<FTW_SL> n'apparaît que pour les liens symboliques qui ne pointent vers aucun fichier existant ; sur d'autres encore, B<ftw>() utilise B<FTW_SL> pour chaque lien symbolique. Si I<chemin_fichier> est un lien symbolique et si B<stat>(2) échoue, POSIX.1-2008 indique que le résultat est indéfini si B<FTW_NS> ou B<FTW_SL> sont définis dans I<symbole_type>. Pour un fonctionnement prévisible, employez B<nftw>().

note: type: SH
en: BUGS
fr: BOGUES

note: https://bugzilla.redhat.com/show_bug.cgi?id=1422736 http://austingroupbugs.net/view.php?id=1121 glibc commit 6ba205b2c35e3e024c8c12d2ee1b73363e84da87 https://sourceware.org/bugzilla/show_bug.cgi?id=23501 type: Plain text
en: According to POSIX.1-2008, when the I<typeflag> argument passed to I<fn>()  contains B<FTW_SLN>, the buffer pointed to by I<sb> should contain information about the dangling symbolic link (obtained by calling B<lstat>(2)  on the link).  Early glibc versions correctly followed the POSIX specification on this point.  However, as a result of a regression introduced in glibc 2.4, the contents of the buffer pointed to by I<sb> were undefined when B<FTW_SLN> is passed in I<typeflag>.  (More precisely, the contents of the buffer were left unchanged in this case.)  This regression was eventually fixed in glibc 2.30, so that the glibc implementation (once more) follows the POSIX specification.
fr: Selon POSIX.1-2008, lorsque l'argument I<symbole_type> passé à I<fn>() contient B<FTW_SLN>, le tampon pointé par I<sb> doit contenir des informations à propos du lien symbolique pointant nulle part (obtenues en appelant B<lstat>(2) sur le lien), et les premières versions de la glibc respectaient la spécification POSIX sur ce point. Cependant, suite à une régression introduite dans la version\ 2.4 de la glibc, le contenu du tampon pointé par I<sb> devint indéfini lorsque B<FTW_SLN> était défini dans I<symbole_type> (plus précisément, le contenu du tampon restait inchangé dans ce cas). Cette régression fut finalement corrigée dans la version\ 2.30 de la glibc de façon à ce que l'implémentation de la glibc suive à nouveau la spécification POSIX.

note: type: SH
en: EXAMPLES
fr: EXEMPLES

note: type: Plain text
en: The following program traverses the directory tree under the path named in its first command-line argument, or under the current directory if no argument is supplied.  It displays various information about each file.  The second command-line argument can be used to specify characters that control the value assigned to the I<flags> argument when calling B<nftw>().
fr: Le programme suivant parcourt l'arbre des répertoires du chemin donné en premier argument de la ligne de commande ou du répertoire courant s'il n'est pas indiqué. Il affiche diverses informations à propos de chaque fichier. Le second argument de la ligne de commande peut être utilisé pour indiquer les caractères qui contrôlent la valeur assignée à l'argument I<drapeaux> lors des appels à B<nftw>().

note: type: SS
en: Program source
fr: Source du programme

note: type: Plain text
en: static int
    display_info(const char *fpath, const struct stat *sb,
                 int tflag, struct FTW *ftwbuf)
    {
        printf("%-3s %2d ",
                (tflag == FTW_D) ?   "d"   : (tflag == FTW_DNR) ? "dnr" :
                (tflag == FTW_DP) ?  "dp"  : (tflag == FTW_F) ?   "f" :
                (tflag == FTW_NS) ?  "ns"  : (tflag == FTW_SL) ?  "sl" :
                (tflag == FTW_SLN) ? "sln" : "???",
                ftwbuf-E<gt>level);
fr: static int
    display_info(const char *chemin_fichier, const struct stat *sb,
                 int symbole_type, struct FTW *tampon_ftw)
    {
        printf("%-3s %2d ",
                (symbole_type == FTW_D) ?   "d"   : (symbole_type == FTW_DNR) ? "dnr" :
                (symbole_type == FTW_DP) ?  "dp"  : (symbole_type == FTW_F) ?   "f" :
                (symbole_type == FTW_NS) ?  "ns"  : (symbole_type == FTW_SL) ?  "sl" :
                (symbole_type == FTW_SLN) ? "sln" : "???",
                tampon_ftw-E<gt>level);

note: type: Plain text
en:     if (tflag == FTW_NS)
            printf("-------");
        else
            printf("%7jd", (intmax_t) sb-E<gt>st_size);
fr:     if (symbole_type == FTW_NS)
            printf("-------");
        else
            printf("%7jd", (intmax_t) sb-E<gt>st_size);

note: type: Plain text
en:     printf("   %-40s %d %s\en",
                fpath, ftwbuf-E<gt>base, fpath + ftwbuf-E<gt>base);
fr:     printf("   %-40s %d %s\en",
                chemin_fichier, tampon_ftw-E<gt>base, chemin_fichier + tampon_ftw-E<gt>base);

note: type: Plain text
en:     return 0;           /* To tell nftw() to continue */
    }
fr:     return 0;           /* Pour dire à nftw() de continuer */
    }

note: type: SH
en: SEE ALSO
fr: VOIR AUSSI

note: type: Plain text
en: This page is part of release 5.13 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.13 du projet I<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/.

note: type: TH
en: 2020-06-09
fr: 9 juin 2020

note: type: Plain text
en: B<int nftw(const char *>I<dirpath>B<,>
    B<        int (*>I<fn>B<) (const char *>I<fpath>B<, const struct stat *>I<sb>B<,>
    B<                   int >I<typeflag>B<, struct FTW *>I<ftwbuf>B<),>
    B<        int >I<nopenfd>B<, int >I<flags>B<);>
fr: B<int nftw(const char *>I<chemin_répertoire>B<,>
    B<        int (*>I<fn>B<) (const char *>I<chemin_fichier>B<, const struct stat *>I<sb>B<,>
    B<                   int >I<symbole_type>B<, struct FTW *>I<tampon_ftw>B<),>
    B<        int >I<nb_descripteurs_fichier_ouverts>B<, int >I<drapeaux>B<);>

note: type: Plain text
en: B<int ftw(const char *>I<dirpath>B<,>
    B<        int (*>I<fn>B<) (const char *>I<fpath>B<, const struct stat *>I<sb>B<,>
    B<                   int >I<typeflag>B<),>
    B<        int >I<nopenfd>B<);>
fr: B<int ftw(const char *>I<chemin_répertoire>B<,>
    B<        int (*>I<fn>B<) (const char *>I<chemin_fichier>B<, const struct stat *>I<sb>B<,>
    B<                   int >I<symbole_type>B<),>
    B<        int >I<nb_descripteurs_fichier_ouverts>B<);>

note: type: Plain text
en: This page is part of release 5.10 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.10 du projet I<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/.

note: type: TH
en: 2017-09-15
fr: 15 septembre 2017

note: type: Plain text
en: I<fpath> is a symbolic link pointing to a nonexistent file.  (This occurs only if B<FTW_PHYS> is not set.)  On most implementations, in this case the I<sb> argument passed to I<fn>()  contains information returned by performing B<lstat>(2)  on the symbolic link.  For the details on Linux, see BUGS.
fr: I<chemin_fichier> est un lien symbolique pointant vers un fichier qui n'existe pas (ce qui ne peut se produire que si B<FTW_PHYS> n'est pas défini). Dans ce cas et dans la plupart des implémentations, l'argument I<sb> passé à I<fn>() contiendra des informations renvoyées par l'exécution de B<lstat>(2) sur le lien symbolique. Pour plus de détails sous Linux, voir BOGUES.

note: FIXME . https://bugzilla.redhat.com/show_bug.cgi?id=1422736 http://austingroupbugs.net/view.php?id=1121 type: Plain text
en: In the specification of B<nftw>(), POSIX.1 notes that when B<FTW_NS> is passed as the I<typeflag> argument of I<fn>(), then the contents of the buffer pointed to by the I<sb> argument are undefined.  The standard makes no such statement for the case where B<FTW_SLN> is passed in I<typeflag>, with the implication that the contents of the buffer pointed to by I<sb> are defined.  And indeed this is the case on most implementations: the buffer pointed to by I<sb> contains the results produced by applying B<lstat>(2)  to the symbolic link.  In early glibc, the behavior was the same.  However, since glibc 2.4, the contents of the buffer pointed to by I<sb> are undefined when B<FTW_SLN> is passed in I<typeflag>.  This change I<appears> to be an unintended regression, but it is not (yet) clear if the behavior will be restored to that provided in the original glibc implementation (and on other implementations).
fr: Dans la spécification de B<nftw>(), POSIX.1 note que lorsque B<FTW_NS> est passé dans l'argument I<symbole_type> de I<fn>(), le contenu du tampon pointé par l'argument I<sb> est indéfini. La norme n'indique pas ce qu'il se passe dans le cas où B<FTW_SLN> est passé dans I<symbole_type>, ce qui implique que le contenu du tampon pointé par l'argument I<sb> est défini. Et c'est effectivement le cas dans la plupart des implémentations : le tampon pointé par I<sb> contient les informations renvoyées par l'exécution de B<lstat>(2) sur le lien symbolique. C'était aussi le cas dans les premières versions de la glibc. Cependant, depuis la version\ 2.4 de la glibc, le contenu du tampon pointé par l'argument I<sb> est indéfini lorsque B<FTW_SLN> est passé dans I<symbole_type>. Ce changement I<semble> constituer une régression involontaire, mais il n'est pas (encore) certain que le comportement sera rétabli à celui qu'adoptait l'implémentation originale de la glibc (ainsi que d'autres implémentations).

note: type: SH
en: EXAMPLE
fr: EXEMPLE

note: type: Plain text
en: This page is part of release 4.16 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 4.16 du projet I<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/.
