DIRFD
Section: Linux Programmer's Manual (3)
Updated: 2008-08-21
Index
Return to Main Contents
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 non-negative 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.22 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/.