DIRFD(3)

NAME
dirfd - get directory stream file descriptor

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

int dirfd(DIR *dir);

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

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.

ERRORS
On error -1 is returned.

NOTES
The prototype for dirfd() is only available if _BSD_SOURCE or _SVID_SOURCE is defined (either explicitly, or implicitly, by not defining _POSIX_SOURCE or compiling with the -ansi flag).

CONFORMING TO
This is a BSD extension, present in 4.3BSD-Reno, not in 4.2BSD. Present in libc5 (since 5.1.2) and in glibc2.

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