Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getdents(2) — svr4 — mips UMIPS RISC/os 5.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

directory(3C)

dirent(4)



GETDENTS(2-SVR4)    RISC/os Reference Manual     GETDENTS(2-SVR4)



NAME
     getdents - read directory entries and put in a file system
          independent format

SYNOPSIS
     #include <sys/dirent.h>

     int getdents (int fildes, struct dirent *buf, sizet nbyte);

DESCRIPTION
     fildes is a file descriptor obtained from an open(2) or
     dup(2) system call.

     getdents attempts to read nbyte bytes from the directory
     associated with fildes and to format them as file system
     independent directory entries in the buffer pointed to by
     buf.  Since the file system independent directory entries
     are of variable length, in most cases the actual number of
     bytes returned will be strictly less than nbyte. See
     dirent(4) to calculate the number of bytes.

     The file system independent directory entry is specified by
     the dirent structure.  For a description of this see
     dirent(4).

     On devices capable of seeking, getdents starts at a position
     in the file given by the file pointer associated with
     fildes.  Upon return from getdents, the file pointer is
     incremented to point to the next directory entry.

     This system call was developed in order to implement the
     readdir routine [for a description, see directory(3C)], and
     should not be used for other purposes.

     getdents will fail if one or more of the following are true:

     EBADF          fildes is not a valid file descriptor open
                    for reading.

     EFAULT         buf points outside the allocated address
                    space.

     EINVAL         nbyte is not large enough for one directory
                    entry.

     ENOENT         The current file pointer for the directory is
                    not located at a valid entry.

     ENOLINK        fildes points to a remote machine and the
                    link to that machine is no longer active.

     ENOTDIR        fildes is not a directory.



                        Printed 11/19/92                   Page 1





GETDENTS(2-SVR4)    RISC/os Reference Manual     GETDENTS(2-SVR4)



     EIO            An I/O error occurred while accessing the
                    file system.

SEE ALSO
     directory(3C), dirent(4).

DIAGNOSTICS
     Upon successful completion a non-negative integer is
     returned indicating the number of bytes actually read.  A
     value of 0 indicates the end of the directory has been
     reached.  If the system call failed, a -1 is returned and
     errno is set to indicate the error.











































 Page 2                 Printed 11/19/92



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026