создать новую запись ACL (create a new ACL entry)
Имя (Name)
acl_create_entry
— create a new ACL entry
Библиотека (Library)
Linux Access Control Lists library (libacl, -lacl).
Синопсис (Synopsis)
#include <sys/types.h>
#include <sys/acl.h>
int
acl_create_entry
(acl_t *acl_p, acl_entry_t *entry_p);
Описание (Description)
The acl_create_entry
() function creates a new ACL entry in the ACL
pointed to by the contents of the pointer argument acl_p. On
success, the function returns a descriptor for the new ACL entry
via entry_p.
This function may cause memory to be allocated. The caller should
free any releasable memory, when the new ACL is no longer required,
by calling acl_free(3) with (void*)*acl_p as an argument. If the
ACL working storage cannot be increased in the current location,
then the working storage for the ACL pointed to by acl_p may be
relocated and the previous working storage is released. A pointer
to the new working storage is returned via acl_p.
The components of the new ACL entry are initialized in the
following ways: the ACL tag type component contains
ACL_UNDEFINED_TAG, the qualifier component contains
ACL_UNDEFINED_ID, and the set of permissions has no permissions
enabled. Any existing ACL entry descriptors that refer to entries
in the ACL continue to refer to those entries.
Возвращаемое значение (Return value)
The acl_create_entry
() function returns the value 0 if successful;
otherwise the value -1 is returned and the global variable errno is
set to indicate the error.
Ошибки (Error)
If any of the following conditions occur, the acl_create_entry
()
function returns -1 and sets errno to the corresponding value:
[EINVAL] The argument acl_p is not a valid pointer to an
ACL.
[ENOMEM] The ACL working storage requires more memory
than is allowed by the hardware or system-
imposed memory management constraints.
Стандарты (Conforming to)
IEEE Std 1003.1e draft 17 ('POSIX.1e', abandoned)
Смотри также (See also)
acl_init(3), acl_delete_entry(3), acl_free(3), acl_create_entry(3),
acl(5)