.PP
\fI注\fP: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節を参照。
.SH 説明
-これはあなたの興味をもっている関数ではない。 POSIX 準拠の C ライブラリインターフェースについては \fBreaddir\fP(3) を見ること。
-ã\81\93ã\81®ã\83\9aã\83¼ã\82¸ã\81¯è£¸ã\81®ã\82«ã\83¼ã\83\8dã\83«ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81«ã\81¤ã\81\84ã\81¦ è¨\98è¿°しているが、このインターフェースは \fBgetdents\fP(2)
-によって取って代わられた。
+これはあなたの関心を引くような関数ではないだろう。 POSIX 準拠の C ライブラリインターフェースについては \fBreaddir\fP(3)
+ã\82\92å\8f\82ç\85§ã\81®ã\81\93ã\81¨ã\80\82ã\81\93ã\81®ã\83\9aã\83¼ã\82¸ã\81§ã\81¯ã\80\81ç\94\9fã\81®ã\82«ã\83¼ã\83\8dã\83«ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81«ã\81¤ã\81\84ã\81¦è¨\98è¼\89しているが、このインターフェースは \fBgetdents\fP(2)
+によって置き換えられた。
.PP
\fBreaddir\fP() は、ファイルディスクリプター \fIfd\fP が参照しているディレクトリから \fIold_linux_dirent\fP
-構造体を読み込み、 \fIdirp\fP で指されたバッファーに格納する。 \fIcount\fP 引き数は(ほとんどの \fIold_linux_dirent\fP
-構造体の読み込みにおいて)無視される
+構造体をひとつ読み込み、 \fIdirp\fP で指されたバッファーに格納する。 \fIcount\fP 引き数は無視される。最大で 1 個の
+\fIold_linux_dirent\fP 構造体が読み出される。
.PP
-The \fIold_linux_dirent\fP structure is declared (privately in Linux kernel
-file \fBfs/readdir.c\fP) as follows:
+\fIold_linux_dirent\fP 構造体は (Linux カーネルのファイル \fBfs/readdir.c\fP で内部用として)
+以下のように宣言される:
.PP
.in +4n
.EX
struct old_linux_dirent {
- unsigned long d_ino; /* inode number */
- unsigned long d_offset; /* offset to this \fIold_linux_dirent\fP */
- unsigned short d_namlen; /* length of this \fId_name\fP */
- char d_name[1]; /* filename (null\-terminated) */
+ unsigned long d_ino; /* inode 番号 */
+ unsigned long d_offset; /* この \fIold_linux_dirent\fP へのオフセット */
+ unsigned short d_namlen; /* この \fId_name\fP の長さ */
+ char d_name[1]; /* (NULL 終端された) ファイル名 */
}
.EE
.in
.PP
\fId_ino\fP は inode 番号である。 \fId_offset\fP はディレクトリの最初からこの \fIold_linux_dirent\fP
-まで距離である。 \fId_reclen\fP は \fId_name\fP の大きさで、終端のヌルバイト (\(aq\e0\(aq) を含まない。
-\fId_name\fP ã\81¯ã\83\8cã\83«ã\83\90ã\82¤ã\83\88ã\81§çµ\82ã\82\8fã\82\8bファイル名である。
+までの距離である。 \fId_reclen\fP は \fId_name\fP の大きさで、終端のヌルバイト (\(aq\e0\(aq) を含まない。
+\fId_name\fP ã\81¯ã\83\8cã\83«ã\81§çµ\82端ã\81\95ã\82\8cã\81\9fファイル名である。
.SH 返り値
成功した場合は、1 が返される。 ディレクトリの最後では 0 が返される。 エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。
.SH エラー
ファイルディスクリプター \fIfd\fP が不正である。
.TP
\fBEFAULT\fP
-引き数が呼び出したプロセスのアドレス空間外を指している。
+引き数が呼び出し元プロセスのアドレス空間外を指している。
.TP
\fBEINVAL\fP
結果用のバッファーが小さすぎる。
\fBENOTDIR\fP
ファイルディスクリプターがディレクトリを参照していない。
.SH 準拠
-このシステムコールは Linux 特有である。
+このシステムコールは Linux 固有である。
.SH 注意
glibc はこのシステムコールに対するラッパー関数を提供していない。 \fBsyscall\fP(2) を使って呼び出すこと。
\fIold_linux_dirent\fP 構造体を自分自身で定義する必要がある。しかし、たいていはこのシステムコールではなく \fBreaddir\fP(3)