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

名称

VOP_SETACLvnode のためのアクセス制御リストを設定する

書式

#include < sys/param.h>
#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 thread *td);

解説

この vnode 呼び出しは、ファイルまたはディレクトリのためのアクセス制御リスト (ACL) を設定するために使用されます。

その引数は、次の通りです:

vp
ファイルまたはディレクトリの vnode。
type
設定する ACL のタイプ。
aclp
ACL データを検索する ACL 構造体へのポインタ。
cred
要求の認証に使用するユーザ資格証明。
td
ACL を設定しているスレッド。

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

cred ポインタは、できれば、アクセス制御チェックが行なわれないことを示す NULL を設定できます。この cred 設定は、アクティブなプロセスが行うことを許可されていないかもしれない ACL の変更をカーネルが認可することができるために使用されるかもしれません。

vnode ACL インタフェースは、ファイルとディレクトリの ACL インタフェースのセマンティクスでなく構文を定義します。カーネルの ACL 管理に関するより多くの情報は、 acl(9) で見つかります。

ロック

vnode は、入口でロックされ、返るときもロックされたままであるべきです。

戻り値

ACL が設定に成功するなら、0 が返されます。そうでなければ、適切なエラーコードが返されます。

エラー

[ EINVAL]
渡された ACL タイプが、この vnode には無効であるか、または ACL データが無効です。
[ EACCES]
呼び出し側には、適切な特権がありません。
[ ENOMEM]
十分なメモリが、要求を実行するために利用可能ではありません。
[ EOPNOTSUPP]
ファイルシステムが VOP_SETACL() をサポートしていません。
[ ENOSPC]
ファイルシステムが満杯です。
[ EROFS]
ファイルシステムが読み込み専用です。

作者

このマニュアルページは、 Robert Watson によって書かれました。
December 23, 1999 FreeBSD