acl_create_entry.3
1 .\"- 2 .\" Copyright (c) 2001 Chris D. Faulhaber 3 .\" All rights reserved. 4 .\" 5 .\" Redistribution and use in source and binary forms, with or without 6 .\" modification, are permitted provided that the following conditions 7 .\" are met: 8 .\" 1. Redistributions of source code must retain the above copyright 9 .\" notice, this list of conditions and the following disclaimer. 10 .\" 2. Redistributions in binary form must reproduce the above copyright 11 .\" notice, this list of conditions and the following disclaimer in the 12 .\" documentation and/or other materials provided with the distribution. 13 .\" 14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR THE VOICES IN HIS HEAD BE 18 .\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 19 .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 20 .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 21 .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 22 .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 23 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 24 .\" POSSIBILITY OF SUCH DAMAGE. 25 .\" 26 .\" $FreeBSD: src/lib/libc/posix1e/acl_create_entry.3,v 1.5 2002/12/18 12:45:09 ru Exp $ 27 .\" 28 .Dd March 16, 2001 29 .Dt ACL_CREATE_ENTRY 3 30 .Os 31 .Sh NAME 32 .Nm acl_create_entry , 33 .Nm acl_create_entry_np 34 .Nd create a new ACL entry 35 .Sh LIBRARY 36 .Lb libc 37 .Sh SYNOPSIS 38 .In sys/types.h 39 .In sys/acl.h 40 .Ft int 41 .Fn acl_create_entry "acl_t *acl_p" "acl_entry_t *entry_p" 42 .Ft int 43 .Fn acl_create_entry_np "acl_t *acl_p" "acl_entry_t *entry_p" "int entry_index" 44 .Sh DESCRIPTION 45 The 46 .Fn acl_create_entry 47 function 48 is a POSIX.1e call that creates a new ACL entry in the ACL 49 pointed to by 50 .Fa acl_p . 51 The function will return in 52 .Fa entry_p 53 a descriptor for this ACL entry. 54 .Pp 55 The 56 .Fn acl_create_entry_np 57 function is a non-portable extension which allows the caller to specify the 58 position of the created entry within the ACL. If 59 .Fa entry_index 60 is 61 .Dv ACL_FIRST_ENTRY 62 the entry will be created at the head of the ACL. If 63 .Fa entry_index 64 is 65 .Dv ACL_LAST_ENTRY 66 the entry will be created at the end of the ACL. After inserting an ACL entry with an 67 .Fa entry_index 68 other than 69 .Dv ACL_LAST_ENTRY 70 the behaviour of any acl_entry_t's previously obtained from the ACL 71 by 72 .Fn acl_create_entry 73 or 74 .Fn acl_get_entry 75 is undefined. 76 .Sh RETURN VALUES 77 .Rv -std acl_create_entry 78 .Sh ERRORS 79 The 80 .Fn acl_create_entry 81 and 82 .Fn acl_create_entry_np 83 functions fail if: 84 .Bl -tag -width Er 85 .It Bq Er EINVAL 86 Argument 87 .Fa acl_p 88 does not point to a pointer to a valid ACL. 89 .It Bq Er ENOMEM 90 The ACL working storage requires more memory than is 91 allowed by the hardware or system-imposed memory 92 management constraints. 93 .It Bq Er ERANGE 94 The 95 .Fa entry_index 96 argument to 97 .Fn acl_create_entry_np 98 is greater than the number of entries in the ACL. 99 .El 100 .Sh SEE ALSO 101 .Xr acl 3 , 102 .Xr acl_delete_entry 3 , 103 .Xr acl_get_entry 3 , 104 .Xr posix1e 3 105 .Sh STANDARDS 106 POSIX.1e is described in IEEE POSIX.1e draft 17. 107 .Sh AUTHORS 108 .An Michael Smith 109 .An Chris D Fulhaber