Provided by: manpages-pt-dev_20040726-4_all bug

NOME

       readdir - lê a entrada do diretório

SINOPSE

       #include <unistd.h>
       #include <linux/dirent.h>
       #include <linux/unistd.h>

       _syscall3(int, readdir, uint, fd, struct dirent *, dirp, uint, count);

       int readdir(unsigned int fd, struct dirent *dirp, unsigned int count);

DESCRIÇÃO

       Está não é a função que você possa se interessar.  Veja em readdir(3) para a interface POSIX adequada com
       a biblioteca C.  Esta página documenta a interface de chamada bare do kernel, que pode  ser  alterado,  e
       substituído por getdents(2).

       readdir lê uma estrutura dirent a partir do diretório apontado por fd para a área de memória apontada por
       dirp.  O parãmetro count é ignorado; no máximo uma strutura dirent é lida.

       A estrutura dirent é declarada como segue:

              struct dirent
              {
                  long d_ino;                 /* inode number */
                  off_t d_off;                /* offset to this dirent */
                  unsigned short d_reclen;    /* length of this d_name */
                  char d_name [NAME_MAX+1];   /* file name (null-terminated) */
              }

       d_ino é um número de inode.  d_off é a distância a partir  do  início  do  diretório  para  esta  dirent.
       d_reclen  é  o  tamanho  de d_name, sem contar o caractere terminador.  d_name é um nome de arquivo com o
       caracter terminador nulo.

VALORES RETORNADOS

       Em caso de sucesso, 1 é retornado.  No  final  do  diretório,  0  é  retornado.   Caso  contrário,  -1  é
       retornado, e errno é selecionado adequadamente.

ERROS

       EBADF  É um descritor de arquivos inválido fd.

       EFAULT O argumento aponta para fora da área de endereços do processo solicitante.

       EINVAL O buffer de resultado é muito pequeno.

       ENOENT Não encontrado o diretório.

       ENOTDIR
              O descritor de arquivos não se refere para um diretório.

DE ACORDO COM

       Esta chamada de sistema é específica do Linux.

VEJA TAMBÉM

       getdents(2), readdir(3)

TRADUZIDO POR LDP-BR em 21/08/2000

       André  L. Fassone Canova <lonelywolf@blv.com.br> (tradução) xxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx>
       (revisão)