| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 
 | .\" -*- nroff -*-
.\" Copyright (C) 1995 Andries Brouwer (aeb@cwi.nl)
.\"
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Permission is granted to copy and distribute modified versions of this
.\" manual under the conditions for verbatim copying, provided that the
.\" entire resulting derived work is distributed under the terms of a
.\" permission notice identical to this one
.\" 
.\" Since the Linux kernel and libraries are constantly changing, this
.\" manual page may be incorrect or out-of-date.  The author(s) assume no
.\" responsibility for errors or omissions, or for damages resulting from
.\" the use of the information contained herein.  The author(s) may not
.\" have taken the same level of care in the production of this manual,
.\" which is licensed free of charge, as they might when working
.\" professionally.
.\" 
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and authors of this work.
.\"
.\" Written 11 June 1995 by Andries Brouwer <aeb@cwi.nl>
.\" Modified 22 July 1995 by Michael Chastain <mec@duracef.shout.net>:
.\"   In 1.3.X, returns only one entry each time; return value is different.
.TH READDIR 2  "22/07/1995" "Linux 1.3.6" "Manual do Programador Linux"
.SH NOME
readdir \- l a entrada do diretrio
.SH SINOPSE
.nf
.B #include <unistd.h>
.B #include <linux/dirent.h>
.B #include <linux/unistd.h>
.sp
.B _syscall3(int, readdir, uint, fd, struct dirent *, dirp, uint, count);
.sp
.BI "int readdir(unsigned int " fd ", struct dirent *" dirp ", unsigned int " count );
.fi
.SH DESCRIO
Est no  a funo que voc possa se interessar.
Veja em
.BR readdir (3)
para a interface POSIX adequada com a biblioteca C.
Esta pgina documenta a interface de chamada bare do kernel,
que pode ser alterado, e substitudo por
.BR getdents (2).
.PP
.B readdir
l uma estrutura
.I dirent
a partir do diretrio
apontado por
.I fd
para a rea de memria apontada por
.IR dirp .
O parmetro
.I count
 ignorado; no mximo uma strutura dirent  lida.
.PP
A estrutura
.I dirent
 declarada como segue:
.PP
.RS
.nf
struct dirent
{
    long d_ino;                 /* inode number */
    off_t d_off;                /* offset to this \fIdirent\fP */
    unsigned short d_reclen;    /* length of this \fId_name\fP */
    char d_name [NAME_MAX+1];   /* file name (null-terminated) */
}
.fi
.RE
.PP
.I d_ino
 um nmero de inode.
.I d_off
 a distncia a partir do incio do diretrio para esta
.IR dirent .
.I d_reclen
 o tamanho de
.IR d_name,
sem contar o caractere terminador.
.I d_name
 um nome de arquivo com o caracter terminador nulo.
.PP
.SH "VALORES RETORNADOS"
Em caso de sucesso, 1  retornado.
No final do diretrio, 0  retornado.
Caso contrrio, \-1  retornado, e
.I errno
 selecionado adequadamente.
.SH "ERROS"
.TP
.B EBADF
 um descritor de arquivos invlido
.IR fd .
.TP
.B EFAULT
O argumento aponta para fora da rea de endereos do processo solicitante.
.TP
.B EINVAL
O buffer de resultado  muito pequeno.
.TP
.B ENOENT
No encontrado o diretrio.
.TP
.B ENOTDIR
O descritor de arquivos no se refere para um diretrio.
.SH "DE ACORDO COM"
Esta chamada de sistema  especfica do Linux.
.SH "VEJA TAMBM"
.BR getdents (2),
.BR readdir (3)
.SH TRADUZIDO POR LDP-BR em 21/08/2000
\&\fR\&\f(CWAndr L. Fassone Canova <lonelywolf@blv.com.br> (traduo)\fR
\&\fR\&\f(CWxxxxxxxxxxxxxxxxxxxxxxxxx <xxx@xxxxxx.xxx.xx> (reviso)\fR
 |