|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
"http://www.w3.org/TR/html4/loose.dtd">
|
|
Packit Service |
1d0348 |
<html>
|
|
Packit Service |
1d0348 |
<head>
|
|
Packit Service |
1d0348 |
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
Packit Service |
1d0348 |
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
Packit Service |
1d0348 |
<meta name="Content-Style" content="text/css">
|
|
Packit Service |
1d0348 |
<style type="text/css">
|
|
Packit Service |
1d0348 |
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
Packit Service |
1d0348 |
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
Packit Service |
1d0348 |
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
Packit Service |
1d0348 |
h1 { text-align: center }
|
|
Packit Service |
1d0348 |
</style>
|
|
Packit Service |
1d0348 |
<title></title>
|
|
Packit Service |
1d0348 |
</head>
|
|
Packit Service |
1d0348 |
<body>
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL(3) BSD Library Functions Manual
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL(3)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
NAME
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_add_entry,
|
|
Packit Service |
1d0348 |
archive_entry_acl_add_entry_w,
|
|
Packit Service |
1d0348 |
archive_entry_acl_clear,
|
|
Packit Service |
1d0348 |
archive_entry_acl_count,
|
|
Packit Service |
1d0348 |
archive_entry_acl_from_text,
|
|
Packit Service |
1d0348 |
archive_entry_acl_from_text_w,
|
|
Packit Service |
1d0348 |
archive_entry_acl_next,
|
|
Packit Service |
1d0348 |
archive_entry_acl_next_w,
|
|
Packit Service |
1d0348 |
archive_entry_acl_reset,
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text,
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text_w,
|
|
Packit Service |
1d0348 |
archive_entry_acl_types — functions for
|
|
Packit Service |
1d0348 |
manipulating Access Control Lists in archive entry
|
|
Packit Service |
1d0348 |
descriptions
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
LIBRARY
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Streaming Archive Library
|
|
Packit Service |
1d0348 |
(libarchive, -larchive)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
SYNOPSIS
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
#include
|
|
Packit Service |
1d0348 |
<archive_entry.h>
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
void
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_add_entry(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
int type, int permset,
|
|
Packit Service |
1d0348 |
int tag, int qualifier,
|
|
Packit Service |
1d0348 |
const char *name);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
void
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_add_entry_w(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
int type, int permset,
|
|
Packit Service |
1d0348 |
int tag, int qualifier,
|
|
Packit Service |
1d0348 |
const wchar_t *name);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
void
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_clear(struct archive_entry *a);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_count(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
int type);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_from_text(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
const char *text,
|
|
Packit Service |
1d0348 |
int type);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_from_text_w(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
const wchar_t *text,
|
|
Packit Service |
1d0348 |
int type);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_next(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
int type, int *ret_type,
|
|
Packit Service |
1d0348 |
int *ret_permset, int *ret_tag,
|
|
Packit Service |
1d0348 |
int *ret_qual,
|
|
Packit Service |
1d0348 |
const char **ret_name);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_next_w(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
int type, int *ret_type,
|
|
Packit Service |
1d0348 |
int *ret_permset, int *ret_tag,
|
|
Packit Service |
1d0348 |
int *ret_qual,
|
|
Packit Service |
1d0348 |
const wchar_t **ret_name);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_reset(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
int type);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
char
|
|
Packit Service |
1d0348 |
*
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
ssize_t *len_p, int flags);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
wchar_t
|
|
Packit Service |
1d0348 |
*
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text_w(struct archive_entry *a,
|
|
Packit Service |
1d0348 |
ssize_t *len_p, int flags);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
int
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_types(struct archive_entry *a);
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
DESCRIPTION
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The ’’Access Control
|
|
Packit Service |
1d0348 |
Lists (ACLs)’’ extend the standard Unix perssion
|
|
Packit Service |
1d0348 |
model. The ACL interface of libarchive supports both
|
|
Packit Service |
1d0348 |
POSIX.1e and NFSv4 style ACLs. Use of ACLs is restricted by
|
|
Packit Service |
1d0348 |
various levels of ACL support in operating systems, file
|
|
Packit Service |
1d0348 |
systems and archive formats.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
POSIX.1e
|
|
Packit Service |
1d0348 |
Access Control Lists
|
|
Packit Service |
1d0348 |
A POSIX.1e ACL consists of a number of independent entries.
|
|
Packit Service |
1d0348 |
Each entry specifies the permission set as bitmask of basic
|
|
Packit Service |
1d0348 |
permissions. Valid permissions in the permset
|
|
Packit Service |
1d0348 |
are:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_READ (r)
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_WRITE (w)
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_EXECUTE (x)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The permissions correspond to
|
|
Packit Service |
1d0348 |
the normal Unix permissions.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The tag
|
|
Packit Service |
1d0348 |
specifies the principal to which the permission applies.
|
|
Packit Service |
1d0348 |
Valid values are:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_USER
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The user specified by the name
|
|
Packit Service |
1d0348 |
field.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_USER_OBJ
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The owner of the file.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_GROUP
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The group specied by the name
|
|
Packit Service |
1d0348 |
field.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_GROUP_OBJ
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The group who owns the
|
|
Packit Service |
1d0348 |
file.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_MASK
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The maximum permissions to be
|
|
Packit Service |
1d0348 |
obtained via group permissions.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_OTHER
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Any principal who is not file
|
|
Packit Service |
1d0348 |
owner or a member of the owning group.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The principals
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_USER_OBJ, ARCHIVE_ENTRY_ACL_GROUP_OBJ and
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_OTHER are equivalent to user, group and
|
|
Packit Service |
1d0348 |
other in the classic Unix permission model and specify
|
|
Packit Service |
1d0348 |
non-extended ACL entries.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
All files with
|
|
Packit Service |
1d0348 |
have an access ACL (ARCHIVE_ENTRY_ACL_TYPE_ACCESS). This
|
|
Packit Service |
1d0348 |
specifies the permissions required for access to the file
|
|
Packit Service |
1d0348 |
itself. Directories have an additional ACL
|
|
Packit Service |
1d0348 |
(ARCHIVE_ENTRY_ACL_TYPE_DEFAULT), which controls the initial
|
|
Packit Service |
1d0348 |
access ACL for newly created directory entries.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
NFSv4 Access
|
|
Packit Service |
1d0348 |
Control Lists
|
|
Packit Service |
1d0348 |
A NFSv4 ACL consists of multiple individual entries called
|
|
Packit Service |
1d0348 |
Access Control Entries (ACEs).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
There are four
|
|
Packit Service |
1d0348 |
possible types of a NFSv4 ACE:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ALLOW
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Allow principal to perform
|
|
Packit Service |
1d0348 |
actions requiring given permissions.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_DENY
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Prevent principal from
|
|
Packit Service |
1d0348 |
performing actions requiring given permissions.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_AUDIT
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Log access attempts by
|
|
Packit Service |
1d0348 |
principal which require given permissions.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ALARM
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Trigger a system alarm on
|
|
Packit Service |
1d0348 |
access attempts by principal which require given
|
|
Packit Service |
1d0348 |
permissions.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The tag
|
|
Packit Service |
1d0348 |
specifies the principal to which the permission applies.
|
|
Packit Service |
1d0348 |
Valid values are:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_USER
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The user specified by the name
|
|
Packit Service |
1d0348 |
field.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_USER_OBJ
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The owner of the file.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_GROUP
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The group specied by the name
|
|
Packit Service |
1d0348 |
field.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_GROUP_OBJ
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The group who owns the
|
|
Packit Service |
1d0348 |
file.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_EVERYONE
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Any principal who is not file
|
|
Packit Service |
1d0348 |
owner or a member of the owning group.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Entries with the
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_USER or ARCHIVE_ENTRY_ACL_GROUP tag store
|
|
Packit Service |
1d0348 |
the user and group name in the name string and
|
|
Packit Service |
1d0348 |
optionally the user or group ID in the qualifier
|
|
Packit Service |
1d0348 |
integer.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
NFSv4 ACE
|
|
Packit Service |
1d0348 |
permissions and flags are stored in the same permset
|
|
Packit Service |
1d0348 |
bitfield. Some permissions share the same constant and
|
|
Packit Service |
1d0348 |
permission character but have different effect on
|
|
Packit Service |
1d0348 |
directories than on files. The following ACE permissions are
|
|
Packit Service |
1d0348 |
supported:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_READ_DATA (r)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Read data (file).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_LIST_DIRECTORY (r)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
List entries (directory).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_WRITE_DATA (w)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Write data (file).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ADD_FILE (w)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Create files (directory).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_EXECUTE (x)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Execute file or change into a
|
|
Packit Service |
1d0348 |
directory.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_APPEND_DATA (p)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Append data (file).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY (p)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Create subdirectories
|
|
Packit Service |
1d0348 |
(directory).
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_DELETE_CHILD (D)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Remove files and subdirectories
|
|
Packit Service |
1d0348 |
inside a directory.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_DELETE (d)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Remove file or directory.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES (a)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Read file or directory
|
|
Packit Service |
1d0348 |
attributes.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES (A)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Write file or directory
|
|
Packit Service |
1d0348 |
attributes.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS (R)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Read named file or directory
|
|
Packit Service |
1d0348 |
attributes.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS (W)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Write named file or directory
|
|
Packit Service |
1d0348 |
attributes.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_READ_ACL (c)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Read file or directory ACL.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_WRITE_ACL (C)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Write file or directory
|
|
Packit Service |
1d0348 |
ACL.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_WRITE_OWNER (o)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Change owner of a file or
|
|
Packit Service |
1d0348 |
directory.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_SYNCHRONIZE (s)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Use synchronous I/O.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The following
|
|
Packit Service |
1d0348 |
NFSv4 ACL inheritance flags are supported:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT (f)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Inherit parent directory ACE to
|
|
Packit Service |
1d0348 |
files.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT (d)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Inherit parent directory ACE to
|
|
Packit Service |
1d0348 |
subdirectories.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY (i)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Only inherit, do not apply the
|
|
Packit Service |
1d0348 |
permission on the directory itself.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT
|
|
Packit Service |
1d0348 |
(n)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Do not propagate inherit flags.
|
|
Packit Service |
1d0348 |
Only first-level entries inherit ACLs.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS (S)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Trigger alarm or audit on
|
|
Packit Service |
1d0348 |
successful access.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS (F)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Trigger alarm or audit on
|
|
Packit Service |
1d0348 |
failed access.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_ENTRY_INHERITED (I)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Mark that ACE was
|
|
Packit Service |
1d0348 |
inherited.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Functions
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_add_entry() and
|
|
Packit Service |
1d0348 |
archive_entry_acl_add_entry_w() add a single ACL
|
|
Packit Service |
1d0348 |
entry. For the access ACL and non-extended principals, the
|
|
Packit Service |
1d0348 |
classic Unix permissions are updated. An archive entry
|
|
Packit Service |
1d0348 |
cannot contain both POSIX.1e and NFSv4 ACL entries.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_clear()
|
|
Packit Service |
1d0348 |
removes all ACL entries and resets the enumeration
|
|
Packit Service |
1d0348 |
pointer.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_count()
|
|
Packit Service |
1d0348 |
counts the ACL entries that have the given type mask.
|
|
Packit Service |
1d0348 |
type can be the bitwise-or of
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ACCESS
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_DEFAULT
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
for POSIX.1e
|
|
Packit Service |
1d0348 |
ACLs and
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ALLOW
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_DENY
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_AUDIT
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ALARM
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
for NFSv4 ACLs.
|
|
Packit Service |
1d0348 |
For POSIX.1e ACLs if ARCHIVE_ENTRY_ACL_TYPE_ACCESS is
|
|
Packit Service |
1d0348 |
included and at least one extended ACL entry is found, the
|
|
Packit Service |
1d0348 |
three non-extended ACLs are added.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_from_text()
|
|
Packit Service |
1d0348 |
and archive_entry_acl_from_text_w() add new (or merge
|
|
Packit Service |
1d0348 |
with existing) ACL entries from (wide) text. The argument
|
|
Packit Service |
1d0348 |
type may take one of the following values:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ACCESS
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_DEFAULT
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_NFS4
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Supports all
|
|
Packit Service |
1d0348 |
formats that can be created with
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text() or respective
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text_w(). Existing ACL entries
|
|
Packit Service |
1d0348 |
are preserved. To get a clean new ACL from text
|
|
Packit Service |
1d0348 |
archive_entry_acl_clear() must be called first.
|
|
Packit Service |
1d0348 |
Entries prefixed with ’’default:’’
|
|
Packit Service |
1d0348 |
are treated as ARCHIVE_ENTRY_ACL_TYPE_DEFAULT unless
|
|
Packit Service |
1d0348 |
type is ARCHIVE_ENTRY_ACL_TYPE_NFS4. Invalid entries,
|
|
Packit Service |
1d0348 |
non-parseable ACL entries and entries beginning with the
|
|
Packit Service |
1d0348 |
’#’ character (comments) are skipped.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_next()
|
|
Packit Service |
1d0348 |
and archive_entry_acl_next_w() return the next entry
|
|
Packit Service |
1d0348 |
of the ACL list. This functions may only be called after
|
|
Packit Service |
1d0348 |
archive_entry_acl_reset() has indicated the presence
|
|
Packit Service |
1d0348 |
of extended ACL entries.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_reset()
|
|
Packit Service |
1d0348 |
prepare reading the list of ACL entries with
|
|
Packit Service |
1d0348 |
archive_entry_acl_next() or
|
|
Packit Service |
1d0348 |
archive_entry_acl_next_w(). The function returns
|
|
Packit Service |
1d0348 |
either 0, if no non-extended ACLs are found. In this case,
|
|
Packit Service |
1d0348 |
the access permissions should be obtained by
|
|
Packit Service |
1d0348 |
archive_entry_mode(3) or set using chmod(2). Otherwise, the
|
|
Packit Service |
1d0348 |
function returns the same value as
|
|
Packit Service |
1d0348 |
archive_entry_acl_count().
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text()
|
|
Packit Service |
1d0348 |
and archive_entry_acl_to_text_w() convert the ACL
|
|
Packit Service |
1d0348 |
entries for the given type into a (wide) string of ACL
|
|
Packit Service |
1d0348 |
entries separated by newline. If the pointer len_p is
|
|
Packit Service |
1d0348 |
not NULL, then the function shall return the length of the
|
|
Packit Service |
1d0348 |
string (not including the NULL terminator) in the location
|
|
Packit Service |
1d0348 |
pointed to by len_p. The flag argument is a
|
|
Packit Service |
1d0348 |
bitwise-or.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The following
|
|
Packit Service |
1d0348 |
flags are effective only on POSIX.1e ACL:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_ACCESS
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Output access ACLs.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_DEFAULT
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Output POSIX.1e default
|
|
Packit Service |
1d0348 |
ACLs.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Prefix each default ACL entry
|
|
Packit Service |
1d0348 |
with the word ’’default:’’.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_STYLE_SOLARIS
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The mask and other ACLs don not
|
|
Packit Service |
1d0348 |
contain a double colon.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The following
|
|
Packit Service |
1d0348 |
flags are effecive only on NFSv4 ACL:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_STYLE_COMPACT
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Do not output minus characters
|
|
Packit Service |
1d0348 |
for unset permissions and flags in NFSv4 ACL permission and
|
|
Packit Service |
1d0348 |
flag fields.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
The following
|
|
Packit Service |
1d0348 |
flags are effective on both POSIX.1e and NFSv4 ACL:
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Add an additional
|
|
Packit Service |
1d0348 |
colon-separated field containing the user or group id.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
Separate ACL entries with comma
|
|
Packit Service |
1d0348 |
instead of newline.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
If the archive
|
|
Packit Service |
1d0348 |
entry contains NFSv4 ACLs, all types of NFSv4 ACLs are
|
|
Packit Service |
1d0348 |
returned. It the entry contains POSIX.1e ACLs and none of
|
|
Packit Service |
1d0348 |
the flags ARCHIVE_ENTRY_ACL_TYPE_ACCESS or
|
|
Packit Service |
1d0348 |
ARCHIVE_ENTRY_ACL_TYPE_DEFAULT are specified, both access
|
|
Packit Service |
1d0348 |
and default entries are returned and default entries are
|
|
Packit Service |
1d0348 |
prefixed with ’’default:’’.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_types()
|
|
Packit Service |
1d0348 |
get ACL entry types contained in an archive entry’s
|
|
Packit Service |
1d0348 |
ACL. As POSIX.1e and NFSv4 ACL entries cannot be mixed, this
|
|
Packit Service |
1d0348 |
function is a very efficient way to detect if an ACL already
|
|
Packit Service |
1d0348 |
contains POSIX.1e or NFSv4 ACL entries.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
RETURN VALUES
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_count()
|
|
Packit Service |
1d0348 |
and archive_entry_acl_reset() returns the number of
|
|
Packit Service |
1d0348 |
ACL entries that match the given type mask. For POSIX.1e
|
|
Packit Service |
1d0348 |
ACLS if the type mask includes ARCHIVE_ENTRY_ACL_TYPE_ACCESS
|
|
Packit Service |
1d0348 |
and at least one extended ACL entry exists, the three
|
|
Packit Service |
1d0348 |
classic Unix permissions are counted.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_from_text()
|
|
Packit Service |
1d0348 |
and archive_entry_acl_from_text_w() return ARCHIVE_OK
|
|
Packit Service |
1d0348 |
if all entries were successfully parsed and ARCHIVE_WARN if
|
|
Packit Service |
1d0348 |
one or more entries were invalid or non-parseable.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_next()
|
|
Packit Service |
1d0348 |
and archive_entry_acl_next_w() return ARCHIVE_OK on
|
|
Packit Service |
1d0348 |
success, ARCHIVE_EOF if no more ACL entries exist and
|
|
Packit Service |
1d0348 |
ARCHIVE_WARN if archive_entry_acl_reset() has not
|
|
Packit Service |
1d0348 |
been called first.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text()
|
|
Packit Service |
1d0348 |
returns a string representing the ACL entries matching the
|
|
Packit Service |
1d0348 |
given type and flags on success or NULL on error.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_to_text_w()
|
|
Packit Service |
1d0348 |
returns a wide string representing the ACL entries matching
|
|
Packit Service |
1d0348 |
the given type and flags on success or NULL on error.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry_acl_types()
|
|
Packit Service |
1d0348 |
returns a bitmask of ACL entry types or 0 if archive entry
|
|
Packit Service |
1d0348 |
has no ACL entries.
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
SEE ALSO
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
archive_entry(3),
|
|
Packit Service |
1d0348 |
libarchive(3)
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
BSD
|
|
Packit Service |
1d0348 |
February 15, 2017 BSD
|
|
Packit Service |
1d0348 |
|
|
Packit Service |
1d0348 |
</body>
|
|
Packit Service |
1d0348 |
</html>
|