Sous-routine dirfd

Objectif

Extrait le descripteur de fichier utilisé par un flux DIR.

Bibliothèque

Bibliothèque C standard (libc.a)

Syntaxe

#include <dirent.h>
int dirfd(dirp);
DIR *dirp;

Descriptif

La sous-routine dirfd renvoie un descripteur de fichier qui fait référence au répertoire désigné par l'argument dirp . Ce descripteur de fichier est fermé par un appel à la sous-routine closedir . Si vous tentez de fermer le descripteur de fichier et de modifier l'état de la description associée, autrement que via les sous-routines closedir, readdir, readdir_rou rewinddir , le comportement n'est pas défini.

Valeurs renvoyées

Si l'opération aboutit, la sous-routine dirfd renvoie un entier contenant un descripteur de fichier pour le flux désigné par l'argument dirp . Sinon, la sous-routine dirfd renvoie -1 et définit la variable globale errno pour indiquer l'erreur.

Codes d'erreur

La sous-routine dirfd peut échouer si les conditions suivantes sont remplies:

Article Descriptif
EINVAL L'argument dirp ne fait pas référence à un flux de répertoire valide.
ENOTSUP L'implémentation ne prend pas en charge l'association d'un descripteur de fichier à un répertoire.