EN JA
GETFH(2)
GETFH(2) FreeBSD System Calls Manual GETFH(2)

名称

getfh, lgetfhファイルハンドルを取得する

ライブラリ

Standard C Library (libc, -lc)

書式

#include < sys/param.h>
#include < sys/mount.h>

int
getfh( const char *path, fhandle_t *fhp);

int
lgetfh( const char *path, fhandle_t *fhp);

解説

getfh() システムコールは、 fhp によって指されたファイルハンドルに、指定されたファイルまたはディレクトリのためのファイルハンドルを返します。 lgetfh() システムコールは、指定されたファイルがシンボリックリンクであるその場合を除いて getfh() に似ています、その場合に、 lgetfh() は、リンクに関する情報を返し、一方 getfh() は、リンク参照しているファイルに関する情報を返します。リンク参照。これらのシステムコールは、スーパユーザに制限されています。

戻り値

Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

エラー

getfh() と lgetfh() システムコールは、次の 1 つ以上が真であるなら、失敗します:
[ ENOTDIR]
path のパスの接頭辞の構成要素が、ディレクトリではありません。
[ ENAMETOOLONG]
path の構成要素の長さが、255 文字を越えているか、または path の長さが、1023 文字を越えています。
[ ENOENT]
path によって参照されるファイルが、存在しません。
[ EACCES]
検索のパーミッションが path のパスの接頭辞の構成要素に対して否定されています。
[ ELOOP]
path の変換で、あまりにも多くのシンボリックリンクに遭遇しました。
[ EFAULT]
fhp 引数が、無効のアドレスを指しています。
[ EIO]
I/O エラーが、ファイルシステムから読み込むか、または書き込む間に生じました。

関連項目

fhopen(2), open(2), stat(2)

歴史

getfh() システムコールは、 4.4BSD ではじめて登場しました。
April 14, 2011 FreeBSD