diff options
Diffstat (limited to 'man/man3/acl_create_entry.3')
-rw-r--r-- | man/man3/acl_create_entry.3 | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/man/man3/acl_create_entry.3 b/man/man3/acl_create_entry.3 new file mode 100644 index 0000000..325eaec --- /dev/null +++ b/man/man3/acl_create_entry.3 @@ -0,0 +1,97 @@ +.\" Access Control Lists manual pages +.\" +.\" (C) 2002 Andreas Gruenbacher, <a.gruenbacher@computer.org> +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.TH ACL_CREATE_ENTRY 3 "Linux ACL Library" "March 2002" "Access Control Lists" +.SH NAME +acl_create_entry \- create a new ACL entry +.SH LIBRARY +Linux Access Control Lists library (libacl, \-lacl). +.SH C SYNOPSIS +.sp +.nf +.B #include <sys/types.h> +.B #include <sys/acl.h> +.sp +.B "int acl_create_entry (acl_t *\f2acl_p\f3, acl_entry_t *\f2entry_p\f3);" +.Op +.SH DESCRIPTION +The +.B acl_create_entry +function creates a new ACL entry in the ACL pointed to by the contents of the pointer argument +.IR acl_p . +Upon successful completion, the function returns a descriptor for the new +ACL entry via +.IR entry_p . +.PP +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 +.BR acl_free (3) +with +.\" <AG> +.\" 1003.1e says: +.\" .I (void*)acl_t +.\" this makes no sense, so: +.I (void*)acl_p +.\" </AG> +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 +.I acl_p +may be relocated and the previous working storage is released. A pointer to +the new working storage is returned via +.IR acl_p . +.PP +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. +.\" <AG> +.\" Conflict between requirements: +.\" (a) ACL may be relocated, +.\" (b) all pointers remain valid. +.\" </AG> +.SH RETURN VALUE +The value 0 is returned if successful; otherwise the value -1 is +returned and the global variable errno is set to indicate the error. +.SH ERRORS +If any of the following conditions occur, the +.B acl_create_entry +function returns -1 and sets +.B errno +to the corresponding value: +.TP +.SM +\%[EINVAL] +The argument +.I acl_p +is not a valid pointer to an ACL. +.TP +.SM +\%[ENOMEM] +The ACL working storage requires more memory than is allowed by the hardware or system-imposed memory management constraints. +.SH STANDARDS +IEEE Std 1003.1e draft 17 (\(lqPOSIX.1e\(rq, abandoned) +.SH AUTHOR +Derived from the FreeBSD manual pages written by +.IR "Robert N M Watson" ; +and adapted for Linux by +.I "Andreas Gruenbacher" +<a.gruenbacher@computer.org>. +.SH SEE ALSO +.BR acl_init (3), +.BR acl_free (3), +.BR acl (5) |