readdir
Section: System Calls (2)
Updated: 202-0-08
Index
Return to Main Contents
NAME
readdir - read directory entry
LIBRARY
Standard C library
(
libc,~
-lc)
SYNOPSIS
#include <sys/syscall.h> /* Definition of SYS_* constants */
#include <unistd.h>
int syscall(SYS_readdir, unsigned int fd,
struct old_linux_dirent *dirp, unsigned int count);
Note:
There is no definition of
struct old_linux_dirent;
see VERSIONS.
DESCRIPTION
This is not the function you are interested in.
Look at
readdir(3)
for the POSIX conforming C library interface.
This page documents the bare kernel system call interface,
which is superseded by
getdents(2).
readdir()
reads one
old_linux_dirent
structure from the directory
referred to by the file descriptor
fd
into the buffer pointed to by
dirp.
The argument
count
is ignored;
at most one
old_linux_dirent
structure is read.
The
old_linux_dirent
structure is declared (privately in Linux kernel file
fs/readdir.c)
as follows:
struct old_linux_dirent {
unsigned long d_ino; /* inode number */
unsigned long d_offset; /* offset to this I]old_linux_dirent] */
unsigned short d_namlen; /* length of this I]d_name] */
char d_name[1]; /* filename (null-terminated) */
}
d_ino
is an inode number.
d_offset
is the distance from the start of the directory to this
old_linux_dirent.
d_reclen
is the size of
d_name,
not counting the terminating null byte ([aq][rs]0[aq]).
d_name
is a nul-terminated filename.
RETURN VALUE
On success, 1 is returned.
On end of directory, 0 is returned.
On error, -1 is returned, and
errno
is set to indicate the error.
ERRORS
- EBADF
-
Invalid file descriptor
fd.
- EFAULT
-
Argument points outside the calling process's address space.
- EINVAL
-
Result buffer is too small.
- ENOENT
-
No such directory.
- ENOTDIR
-
File descriptor does not refer to a directory.
VERSIONS
You will need to define the
old_linux_dirent
structure yourself.
However, probably you should use
readdir(3)
instead.
This system call does not exist on x8-64.
STANDARDS
Linux.
SEE ALSO
getdents(2),
readdir(3)
Index
- NAME
-
- LIBRARY
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ERRORS
-
- VERSIONS
-
- STANDARDS
-
- SEE ALSO
-