NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | USAGE | ATTRIBUTES | SEE ALSO
#include <sys/types.h> #include <dirent.h>DIR *opendir(const char *dirname);
The opendir() function opens a directory stream corresponding to the directory named by the dirname argument. The directory stream is positioned at the first entry. If the type DIR, is implemented using a file descriptor, applications will only be able to open up to a total of OPEN_MAX files and directories. A successful call to any of the exec functions will close any directory streams that are open in the calling process. See exec(2).
Upon successful completion, opendir() returns a pointer to an object of type DIR. Otherwise, a null pointer is returned and errno is set to indicate the error.
The opendir() function will fail if:
Search permission is denied for the component of the path prefix of dirname or read permission is denied for dirname.
Too many symbolic links were encountered in resolving path.
The length of the dirname argument exceeds PATH_MAX, or a pathname component is longer than NAME_MAX while _POSIX_NO_TRUNC is in effect.
A component of dirname does not name an existing directory or dirname is an empty string.
A component of dirname is not a directory.
The opendir() function may fail if:
There are OPEN_MAX file descriptors currently open in the calling process.
Pathname resolution of a symbolic link produced an intermediate result whose length exceeds PATH_MAX.
Too many files are currently open in the system.
The opendir() function should be used in conjunction with readdir(3C), closedir(3C) and rewinddir(3C) to examine the contents of the directory (see the EXAMPLES section in readdir(3C)). This method is recommended for portability.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
MT-Level | Safe |
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | USAGE | ATTRIBUTES | SEE ALSO