EN JA
VOP_ACCESS(9)
VOP_ACCESS(9) FreeBSD Kernel Developer's Manual VOP_ACCESS(9)

名称

VOP_ACCESS, VOP_ACCESSXファイルまたは UNIX ドメインソケットのアクセスパーミッションをチェックする

書式

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

int
VOP_ACCESS( struct vnode *vp, accmode_t accmode, struct ucred *cred, struct thread *td);

int
VOP_ACCESSX( struct vnode *vp, accmode_t accmode, struct ucred *cred, struct thread *td);

解説

このエントリポイントは、与えられた資格証明に対してファイルのアクセスパーミッションをチェックします。

引数は、次の通りです:

vp
チェックするファイルの vnode。
accmode
要求されたアクセスのタイプ。
cred
チェックするユーザの資格証明。
td
チェックしているスレッド。

accmode は、<sys/vnode.h>に記述されたフラグ、例えば、 VREAD, VWRITE または VEXEC、を含むことができるマスクです。 VOP_ACCESS() に関して、 accmode に設定される唯一のフラグは、 VEXEC, VWRITE, VREAD, VADMINVAPPEND です。他のフラグをチェックするためには、代わりに VOP_ACCESSX() を使用しなければなりません。

ロック

vnode は、(呼び出しの) 入口でロックされ、返るときにロックされたままであるべきです。

戻り値

ファイルが指定された方法でアクセス可能であるなら、0 が返され、そうでなければ、適切なエラーコードが返されます。

エラー

[ EPERM]
不変のファイルを変更しようとしました。
[ EACCES]
パーミッションビットのファイルモードまたは ACL が要求されたアクセスを許可しませんでした。

作者

このマニュアルページは、 Doug Rabson によって書かれました。
September 18, 2009 FreeBSD