lookup_dcookie -
ディレクトリ・エントリのパス名を返す
int lookup_dcookie(u64 cookie, char *buffer,
size_t len);
cookie
値で指定されたディレクトリ・エントリのフルパス名を検索する。
cookie
は、個々のディレクトリ・エントリを区別する内部識別子
(opaque identifier)
である。引き数で指定されたバッファに、ディレクトリ・エントリの
フルパス名が格納される。
lookup_dcookie()
が正常に値を返すためには、カーネルがディレクトリ・エントリへの
cookie 参照を
保持していなければならない。
返り値¶
成功した場合、
lookup_dcookie()
はバッファにコピーしたパス文字列の長さを返す。
エラーの場合は -1
を返し、
errno
に適切な値を設定する。
エラー¶
- EFAULT
- バッファが有効でなかった。
- EINVAL
- 検索が行われた時、cookie
とディレクトリ・エントリのマッピングがカーネルに
登録されていなかったか、または
cookie
が有効なディレクトリ・エントリを
参照していない。
- ENAMETOOLONG
- 名前がバッファに入り切らなかった。
- ENOMEM
- カーネルが、パス名を保持する一時バッファ用のメモリを割り当てることが
できなかった。
- EPERM
- プロセスが cookie
値を検索するのに必要なケーパビリティ
CAP_SYS_ADMIN
を持っていない。
- ERANGE
- バッファが、ディレクトリ・エントリのパス名を収容するのに
十分な大きさではなかった。
バージョン¶
Linux 2.5.43
以降で利用できる。
エラー
ENAMETOOLONG
を返す仕様は 2.5.70
で追加された。
lookup_dcookie() は Linux
独自の関数である。
lookup_dcookie()
は特殊な用途に使われるシステムコールで、現在のところ
oprofile profiler で
使われているだけである。
指定されたディレクトリ・エントリが削除されていた場合、返されるパス名の最後に
" (deleted)"
という文字列が付加されることがある。
この文書について¶
この man ページは Linux
man-pages
プロジェクトのリリース
3.41 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man-pages/
に書かれている。