Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       dirfd - получение файлового дескриптора потока каталога

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

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

       int dirfd(DIR *dirp);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       dirfd():
           /* Since glibc 2.10: */ _POSIX_C_SOURCE >= 200809L
               || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ

       Функция dirfd() возвращает файловый дескриптор, связанный с потоком каталога dirp.

       Этот файловый дескриптор используется внутри функции потоком каталога. В результате он полезен только для
       функций,  которые  не  зависят  и  не  изменяют  положение  в  файле,  например  fstat(2) и fchdir(2). Он
       автоматически закрывается при вызове closedir(3).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       On success, dirfd()  returns a file descriptor (a nonnegative integer).  On error, -1  is  returned,  and
       errno is set to indicate the error.

ОШИБКИ

       В POSIX.1-2008 определены две ошибки, ни одна из которых не возвращается текущей реализацией.

       EINVAL Значение dirp не указывает на допустимый поток каталога.

       ENOTSUP
              Реализация не поддерживает связь файлового дескриптора с каталогом.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ dirfd()                                                             │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       POSIX.1-2008. Данная функция была расширением BSD, появилась в 4.3BSD-Reno, не в 4.2BSD.

СМ. ТАКЖЕ

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

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства  был  сделан Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов
       <pavia00@gmail.com>

       Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное  письмо
       на man-pages-ru-talks@lists.sourceforge.net.

Linux man-pages 6.03                            5 февраля 2023 г.                                       dirfd(3)