VOP_SETACL(9) FreeBSD 一般コマンドマニュアル

VOP_SETACL

前のページ 上に戻る 次のページ

VOP_SETACL


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

     int
     VOP_SETACL(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 を設定しているプロセス。

     aclp ポインタは、 NULL を指定可能であり、指定した ACL が削除されるべきで
     あることを示します。

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

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


ロック

     入る時に vnode はロックされ、戻り時にもロックされ続けているべきです。


戻り値

     ACL が成功裏に設定された場合には 0 が返されます。そうでない場合には適切な
     エラーコードが返されます。


エラー

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

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

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

     [EOPNOTSUPP]       ファイルシステムが VOP_SETACL() をサポートしていませ

ABELNET VPSサービス