ACL_ADD_PERM(3) | FreeBSD Library Functions Manual | ACL_ADD_PERM(3) |
名称
acl_add_perm — パーミッションセットへパーミッションを追加するライブラリ
Standard C Library (libc, -lc)書式
#include < sys/types.h>#include < sys/acl.h>
int
acl_add_perm( acl_permset_t permset_d, acl_perm_t perm);
解説
acl_add_perm() 関数は、 perm に含まれたパーミッションをパーミッションセット permset_d に追加する POSIX.1e 呼び出しです。注: パーミッションセットに既に存在するパーミッションを追加する試みは、エラーとはみなされません。
POSIX.1e ACL に関して、有効な値は、次の通りです:
ACL_EXECUTE | 実行パーミッション |
ACL_WRITE | 書き込みパーミッション |
ACL_READ | 読み込みパーミッション |
NFSv4 ACL に関して、有効な値は、次の通りです:
ACL_READ_DATA | 読み込みパーミッション |
ACL_LIST_DIRECTORY | ACL_READ_DATA と同じ |
ACL_WRITE_DATA | 書き込みパーミッション, またはファイルを作成する |
ACL_ADD_FILE | ACL_READ_DATA と同じ |
ACL_APPEND_DATA | ディレクトリを作成するパーミッション. ファイルに対しては無視されます |
ACL_ADD_SUBDIRECTORY | ACL_APPEND_DATA と同じ |
ACL_READ_NAMED_ATTRS | 無視されます |
ACL_WRITE_NAMED_ATTRS | 無視されます |
ACL_EXECUTE | 実行パーミッション |
ACL_DELETE_CHILD | ファイルとサブディレクトリを削除するパーミッション |
ACL_READ_ATTRIBUTES | 基本属性を読み込むパーミッション |
ACL_WRITE_ATTRIBUTES | 基本属性を変更するパーミッション |
ACL_DELETE | この ACL が置かれるオブジェクトを削除するパーミッション |
ACL_READ_ACL | ACL を読み込むパーミッション |
ACL_WRITE_ACL | ACL とファイルモードを変更するパーミッション |
ACL_SYNCHRONIZE | 無視されます |
ACL_WRITE または ACL_READ と等しい perm を付けて acl_add_perm() を呼び出すことは、POSIX として ACL に等級付けします。 ACL_READ_DATA, ACL_LIST_DIRECTORY, ACL_WRITE_DATA, ACL_ADD_FILE, ACL_APPEND_DATA, ACL_ADD_SUBDIRECTORY, ACL_READ_NAMED_ATTRS, ACL_WRITE_NAMED_ATTRS, ACL_DELETE_CHILD, ACL_READ_ATTRIBUTES, ACL_WRITE_ATTRIBUTES, ACL_DELETE, ACL_READ_ACL, ACL_WRITE_ACL または ACL_SYNCHRONIZE を付けて、それを呼び出すことは、 NFSv4 として ACL に等級付けします。
戻り値
The acl_add_perm() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.エラー
acl_add_perm() 関数は、次の場合に失敗します:- [ EINVAL]
- 引数 permset_d が、ACL エントリ中のパーミッションセットのための有効な記述子ではありません。引数 perm が、有効な acl_perm_t 値を含んでいません。 ACL が、既に異なって等級付けられています。
関連項目
acl(3), acl_clear_perms(3), acl_delete_perm(3), acl_get_brand_np(3), acl_get_permset(3), acl_set_permset(3), posix1e(3)規格
POSIX.1e は、IEEE の POSIX.1e の草案の 17 に記述されています。歴史
POSIX.1e のサポートは、 FreeBSD 4.0 で導入されました。 acl_add_perm() 関数は、 FreeBSD 5.0 で追加されました。作者
acl_add_perm() 関数は、 <jedgar@fxp.org>によって書かれました。June 25, 2009 | FreeBSD |