man pages section 3: Basic Library Functions

Exit Print View

Updated: July 2014
 
 

dirfd(3C)

Name

dirfd - get directory stream file descriptor

Synopsis

#include <dirent.h>

int dirfd(DIR *dir);

Description

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

This file descriptor is the one used internally by the directory stream operations. See opendir(3C), closedir(3C), readdir(3C), rewinddir(3C), seekdir(3C), telldir(3C). The file descriptor is automatically closed when closedir() is called for the directory stream dir or when one of the exec functions is called. See exec (2).

The file descriptor can safely be used only by functions that do not depend on or alter the file position, such as fstat(2) and fchdir(2). Closing the file descriptor with close(2) or modifying the file position by means other than the directory stream operations listed above causes undefined behavior to occur when one of the directory stream operations is subsequently called with the directory stream dir.

Return Values

Upon successful completion, the dirfd() function returns an open file descriptor for the directory associated with the directory stream dir.

Errors

There are no defined error returns. Passing an invalid directory stream as an argument to the dirfd() function results in undefined behavior.

Usage

The dirfd() function is intended to be used to obtain a file descriptor for use with the fchdir() function.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
Safe

See Also

close(2), exec(2), fchdir(2), fstat(2), closedir(3C), opendir(3C), readdir(3C), rewinddir(3C), seekdir(3C), telldir(3C), attributes(5)