dirfd(3) - phpMan

DIRFD(3)                   Linux Programmer's Manual                  DIRFD(3)

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
           || /* Since glibc 2.10: */
               (_POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700)
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  useful only 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, and errno is set to indicate the cause of the error.
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.
ATTRIBUTES
   Multithreading (see pthreads(7))
       The dirfd() function is thread-safe.
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  available  only  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.53 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/.

Linux                             2013-07-05                          DIRFD(3)