Linux 1.3.6
Aliases: getdents64(2), getdents64(2), getdents64(2), getdents64(2), getdents64(2), getdents64(2), getdents64(2), getdents64(2), getdents64(2), getdents64(2)
manpages-pt-dev
Portuguese Versions of the Manual Pages (dev sections)
manpages-dev
Manual pages about using GNU/Linux for development
man-pages
Linux kernel and C library user-space interface documentation
NOME
getdents - obtém as entradas de diretórios
SINOPSE
#include <unistd.h> #include <linux/types.h> #include <linux/dirent.h> #include <linux/unistd.h>
_syscall3(int, getdents, uint, fd, struct dirent *, dirp, uint, count);
int getdents(unsigned int fd, struct dirent *dirp, unsigned int count);
DESCRIÇÃO
getdents lê várias estruturas dirent a partir do diretório apontado por fd dentro da área de memória apontada por dirp. O parãmetro count é o tamanho da área de memória.
A estrutura dirent é declarada como segue:
struct dirent { long d_ino; /* inode number */ off_t d_off; /* offset to next dirent */ unsigned short d_reclen; /* length of this dirent */ 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 o iníco do próximo dirent. d_reclen é o tamanho da completa dirent. d_name é um nome de arquivo vazio.
Esta chamada substitui readdir(2).
VALORES RETORNADOS
Em caso de sucesso, o número de bytes lidos é retornado. No final do diretório, 0 é retornado. Caso contrário, -1 is retornado, e errno é selecionado apropriadamente.
ERROS
EBADF | Descritor de arquivos inválido fd. |
EFAULT | O argumento aponta para o espaço de enderenço dp processo solicitante. |
EINVAL | O buffer de resultado é muito pequeno. |
ENOENT | Sem aquele diretório. |
ENOTDIR | |
O descritor de arquivos não se refere para um diretório. |
DE ACORDO COM
SVr4, SVID. Na documentação SVr4 condições de erro adicionais ENOLINK, EIO.
VEJA TAMBÉM
TRADUZIDO POR LDP-BR em 21/08/2000.
André L. Fassone Canova <lonelywolf> (tradução)
xxxxxxxxxxxxxxxxxxxxxxxxx <xxx> (revisão)