NOM

opendir, fdopendir - Ouvrir un répertoire

BIBLIOTHÈQUE

Bibliothèque C standard ( libc, -lc)

SYNOPSIS

#include <sys/types.h>
#include <dirent.h>
DIR *opendir(const char *nom);
DIR *fdopendir(int fd);
Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :
fdopendir() :
    Depuis la glibc 2.10 :
        _POSIX_C_SOURCE >= 200809L
    Avant la glibc 2.10 :
        _GNU_SOURCE

DESCRIPTION

La fonction opendir() ouvre un flux répertoire correspondant au répertoire nom et renvoie un pointeur sur ce flux. Le flux est positionné sur la première entrée du répertoire.
La fonction fdopendir() est similaire à opendir() mais renvoie un flux répertoire pour le répertoire demandé avec le descripteur de fichier ouvert fd. Après un appel réussi à fdopendir(), fd est utilisé en interne par l'implémentation et ne doit plus être utilisé par l'application.

VALEUR RENVOYÉE

Les fonctions opendir() et fdopendir() renvoient un pointeur sur le flux répertoire. Si une erreur se produit, NULL est renvoyé et errno contient le code d'erreur.

ERREURS

EACCES
Accès interdit.
EBADF
fd n'est pas un descripteur de fichier valable ouvert en lecture.
EMFILE
La limite du nombre de descripteurs de fichiers par processus a été atteinte.
ENFILE
La limite du nombre total de fichiers ouverts pour le système entier a été atteinte.
ENOENT
Le répertoire n'existe pas ou nom est une chaîne vide.
ENOMEM
Pas assez de mémoire pour terminer l'opération.
ENOTDIR
nom n'est pas un répertoire.

VERSIONS

fdopendir() est disponible depuis la glibc 2.4.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface Attribut Valeur
opendir(), fdopendir() Sécurité des threads MT-Safe
 

STANDARDS

opendir() est présente dans SVr4, 4.3BSD et spécifiée dans POSIX.1-2001. fdopendir() est spécifiée dans POSIX.1-2008.

NOTES

Les entrées de nom de fichier peuvent être lues depuis un flux répertoire avec readdir(3).
Le descripteur sous-jacent du flux répertoire peut être obtenu avec dirfd(3).
La fonction opendir() définit l'attribut « close-on-exec » pour le descripteur de fichier sous-jacent à DIR *. La fonction fdopendir() laisse inchangée la configuration de l'attribut « close-on-exec » pour le descripteur de fichier fd. POSIX.1-200x ne spécifie pas que l'attribut « close-on-exec » du descripteur de fichier fd soit positionné ou non par un appel réussi à fdopendir().

VOIR AUSSI

open(2), closedir(3), dirfd(3), readdir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3)

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 <[email protected]>, Thierry Vignaud <[email protected]>, François Micaux, Alain Portal <[email protected]>, Jean-Philippe Guérard <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Thomas Huriaux <[email protected]>, Nicolas François <[email protected]>, Florentin Duneau <[email protected]>, Simon Paillard <[email protected]>, Denis Barbier <[email protected]>, David Prévot <[email protected]> et Grégoire Scano <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 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 à [email protected]