Man Linux: Main Page and Category List

NAME

       dirfd - get directory stream file descriptor

SYNOPSIS

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

       int dirfd(DIR *dirp);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       dirfd(): _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       The  function  dirfd()  returns the file descriptor associated with the
       directory stream dirp.

       This descriptor is the one used internally by the directory stream.  As
       a  result,  it  is  only useful for functions which do not depend on or
       alter the file position, such as fstat(2) and fchdir(2).   It  will  be
       automatically closed when closedir(3) is called.

RETURN VALUE

       On success, a nonnegative file descriptor is returned.  On error, -1 is
       returned.

ERRORS

       POSIX.1-2008 specifies two errors, neither of which is returned by  the
       current implementation.

       EINVAL dirp does not refer to a valid directory stream.

       ENOTSUP
              The  implementation  does  not support the association of a file
              descriptor with a directory.

CONFORMING TO

       POSIX.1-2008.  This function was a BSD extension,  present  in  4.3BSD-
       Reno, not in 4.2BSD.

NOTES

       The   prototype  for  dirfd()  is  only  available  if  _BSD_SOURCE  or
       _SVID_SOURCE is defined.

SEE ALSO

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

COLOPHON

       This  page  is  part of release 3.24 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at http://www.kernel.org/doc/man-pages/.