VOP_ACLCHECK(9)

名称
VOP_ACLCHECK - vnode のアクセス制御リストの調査

書式
<sys/param.h> <sys/vnode.h> <sys/acl.h> int VOP_ACLCHECK(struct vnode *vp, acl_type_t type, struct acl *aclp, struct ucred *cred, struct proc *p)

解説
この vnode 呼び出しは、特定のファイルまたはディレクトリに対する 特定のアクセス制御リスト (ACL) の妥当性を決定するために、使用可能です。

引数は以下の通りです。

vp  ファイルまたはディレクトリの vnode。

type
    調査対象の ACL の型。

aclp
    ACL データの取り出し元の ACL 構造体を指しているポインタ。

cred
    要求の認証のために使用されるユーザ証明。

p   ACL を調査しているプロセス。

cred ポインタは、NULL を渡すことができ、 可能であるならばアクセス制御チェックが実行されないことを指示します。 この cred の設定は、アクティブプロセスに許されていない ACL 証明を、 カーネルが正当化することを認めるために使用可能です。

vnode ACL インタフェースは、ファイルまたはディレクトリの ACL インタフェースの セマンティクスではなく文法を定義します。 カーネル内の ACL 管理についての詳細な情報は acl(9) を参照してください。

ロック
この vnode メソッドの呼び出しのためにロックは不要で、 入る時に保持していた全てのロックは戻る時まで保持されます。

戻り値
vp オブジェクトのための type 型の有効な ACL を aclp ポインタが指している場合には 0 が返されます。 そうでない場合には適切なエラーコードが返されます。

エラー

[EINVAL]
    渡された vnode の ACL 型が無効または ACL データが無効です。

[EACCES]
    許可されませんでした。

[ENOMEM]
    要求を実行するためのメモリが十分ではありません。

[EOPNOTSUPP]
    ファイルシステムが VOP_ACLCHECK をサポートしていません。

関連項目
acl(9), vnode(9), VOP_GETACL(9), VOP_SETACL(9)

作者
このマニュアルページは Robert Watson が書きました。