.\" Updated & Modified 2005-11-04, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
.\" Updated 2006-07-26, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.36
.\"
-.TH FTW 3 2014\-01\-11 Linux "Linux Programmer's Manual"
+.TH FTW 3 2014\-12\-31 Linux "Linux Programmer's Manual"
.SH 名前
ftw, nftw \- ファイルツリーを歩きまわる
.SH 書式
\fIfpath\fP が読み込みできないディレクトリである
.TP
\fBFTW_NS\fP
-The \fBstat\fP(2) call failed on \fIfpath\fP, which is not a symbolic link. The
-probable cause for this is that the caller had read permission on the parent
-directory, so that the filename \fIfpath\fP could be seen, but did not have
-execute permission, so that the file could not be reached for \fBstat\fP(2).
+\fBstat\fP(2) の呼び出しがシンボリックリンクでない \fIfpath\fP で失敗した。
+これのよくある原因は、呼び出し元が親ディレクトリに対する読み込み許可を持っており、 ファイル名 \fIfpath\fP
+を見ることができたが、実行許可は持っておらず、 そのため \fBstat\fP(2) ではそのファイルに到達できなかった、というものである。
.sp
\fIfpath\fP がシンボリックリンクで、かつ \fBstat\fP(2) が失敗した場合、 \fBFTW_NS\fP と \fBFTW_SL\fP (後述)
のどちらが \fItypeflag\fP に渡されるかは未定義であると、POSIX.1\-2001 には書かれている。
\fBFTW_CHDIR\fP
セットされると、ディレクトリの内容を処理する前に そのディレクトリに \fBchdir\fP(2) する。このフラグは、 \fIfpath\fP
が属すディレクトリで何らかの動作を実行する必要がある場合に 便利である。
+(このフラグを指定しても \fIfn\fP の \fIfpath\fP 引き数で渡されるパス名には影響しない。)
.TP
\fBFTW_DEPTH\fP
セットされると、帰りがけ順探索 (post\-order traversal) を行う。 つまり、ディレクトリそのものを引き数とした \fIfn\fP()
\fBnftw\fP() が \fBFTW_ACTIONRETVAL\fP フラグ付きで呼ばれた場合、ツリーの探索を終了させるために \fIfn\fP()
が使用できる、非 0 の値は \fBFTW_STOP\fP だけであり、 この値は \fBnftw\fP() の返り値として返される。
+.SH バージョン
+\fBnftw\fP() は バージョン 2.1 以降の glibc で利用できる。
.SH 準拠
POSIX.1\-2001, SVr4, SUSv1. POSIX.1\-2008 は \fBftw\fP() を廃止予定としている。
.SH 注意
を使うシステム、また \fBftw\fP() が全てのシンボリックリンクに対して \fBFTW_SL\fP を使うシステムもある。
予測可能な動作をさせるためには、 \fBnftw\fP() を使うこと。
.LP
-Linux では、 libc4, libc5, glibc 2.0.6 は 「stat できるがディレクトリではないオブジェクト」 (ファイル,
-シンボリックリンク, fifo 等) に対してはすべて \fBFTW_F\fP を使う。
-
-\fBnftw\fP() 関数は glibc 2.1 以降で利用できる。
+「stat できるがディレクトリではないオブジェクト」 (ファイル, シンボリックリンク, fifo 等) に対しては、すべて \fBFTW_F\fP
+が返される。
\fBFTW_ACTIONRETVAL\fP は glibc 固有である。
.SH 例
.SH 関連項目
\fBstat\fP(2), \fBfts\fP(3), \fBreaddir\fP(3)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.64 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.78 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。