Provided by: manpages-de-dev_4.15.0-9_all bug

BEZEICHNUNG

       opendir - ein Verzeichnis öffnen

ÜBERSICHT

       #include <sys/types.h>
       #include <dirent.h>

       DIR *opendir(const char *name);
       DIR *fdopendir(int dd);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       fdopendir():
           Seit Glibc 2.10:
               _POSIX_C_SOURCE >= 200809L
           Vor Glibc 2.10:
               _GNU_SOURCE

BESCHREIBUNG

       Die  Funktion  opendir()  öffnet  einen  Verzeichnis-Datenstrom  der  dem Verzeichnis name
       entspricht und liefert einen Zeiger auf den ersten Eintrag des Verzeichnisses zurück.

       Die Funktion fdopendir() ähnelt opendir(), gibt aber eine  Folge  der  Verzeichniseinträge
       für  das  Verzeichnis  zurück,  auf  das  der  Dateideskriptor  dd  verweist.  Nach  einem
       erfolgreichen Aufruf von fdopendir() wird dd intern von der  Implementierung  benutzt  und
       sollte nicht anderweitig von der Anwendung benutzt werden.

RÜCKGABEWERT

       Die    Funktionen    opendir()    und   fdopendir()   liefern   einen   Zeiger   auf   den
       Verzeichnis-Datenstrom zurück. Bei einem Fehler wird  ein  NULL  zurückgegeben  und  errno
       gesetzt, um den Fehler anzuzeigen.

FEHLER

       EACCES Zugriff verweigert

       EBADF  dd ist kein gültiger zum Lesen geöffneter Dateideskriptor.

       EMFILE Die Beschränkung pro Prozess der Anzahl offener Datei-Deskriptoren wurde erreicht.

       ENFILE Die systemweite Beschränkung für die Gesamtzahl offener Dateien wurde erreicht.

       ENOENT Das Verzeichnis existiert nicht oder name ist eine leere Zeichenkette.

       ENOMEM Der Speicher reicht nicht aus, um den Vorgang zu beenden.

       ENOTDIR
              name ist kein Verzeichnis.

VERSIONEN

       fdopendir() ist in Glibc seit Version 2.4 verfügbar.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌───────────────────────────────────────────────────────┬───────────────────────┬─────────┐
       │SchnittstelleAttributWert    │
       ├───────────────────────────────────────────────────────┼───────────────────────┼─────────┤
       │opendir(), fdopendir()                                 │ Multithread-Fähigkeit │ MT-Safe │
       └───────────────────────────────────────────────────────┴───────────────────────┴─────────┘

KONFORM ZU

       opendir()  ist auf SVr4 und 4.3BSD vorhanden und in POSIX.1-2001 spezifiziert. fdopendir()
       ist in POSIX.1-2008 spezifiziert.

ANMERKUNGEN

       Dateinameneinträge können mittels readdir(3) aus einem Verzeichnis-Stream gelesen werden.

       Der  zugrundeliegende  Dateideskriptor  des  Verzeichnis-Datenstroms  kann  mit   dirfd(3)
       abgefragt werden.

       Die Funktion opendir() setzt dem Schalter »close-on-exec« für den Dateideskriptor, der DIR
       *  zugrundeliegt.  Die  Funktion   fopendir()   lässt   die   Einstellung   des   Schalter
       »close-on-exec«  für  den Dateideskriptor dd unverändert. POSIX.1-200x spezifiziert nicht,
       ob  ein  erfolgreicher  Aufruf  von  fdopendir()  den  Schalter  »close-on-exec«  für  den
       Dateideskriptor dd setzt.

SIEHE AUCH

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

KOLOPHON

       Diese Seite  ist  Teil  der  Veröffentlichung  5.13  des  Projekts  Linux-man-pages.  Eine
       Beschreibung  des  Projekts,  Informationen,  wie  Fehler gemeldet werden können sowie die
       aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die   deutsche   Übersetzung   dieser   Handbuchseite   wurde    von    Markus    Kaufmann
       <markus.kaufmann@gmx.de> und Chris Leick <c.leick@vollbio.de> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der  Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an die Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.