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$ 27.\" 28.Dd March 13, 2001 29.Dt ACL_GET_QUALIFIER 3 30.Os 31.Sh NAME 32.Nm acl_get_qualifier 33.Nd retrieve the qualifier from an ACL entry 34.Sh LIBRARY 35.Lb libc 36.Sh SYNOPSIS 37.In sys/types.h 38.In sys/acl.h 39.Ft void * 40.Fn acl_get_qualifier "acl_entry_t entry_d" 41.Sh DESCRIPTION 42The 43.Fn acl_get_qualifier 44function 45is a POSIX.1e call that retrieves the qualifier of the tag for 46the ACL entry indicated by the argument 47.Fa entry_d 48into working storage and returns a pointer to that storage. 49.Pp 50If the value of the tag type in the ACL entry referred to by 51.Fa entry_d 52is 53.Dv ACL_USER , 54then the value returned by 55.Fn acl_get_qualifier 56will be a pointer to type 57.Vt uid_t . 58.Pp 59If the value of the tag type in 60the ACL entry referred to by 61.Fa entry_d 62is 63.Dv ACL_GROUP , 64then the value returned by 65.Fn acl_get_qualifier 66will be a pointer to type 67.Vt gid_t . 68.Pp 69If the value of the tag type in the ACL entry referred to by 70.Fa entry_d 71is 72.Dv ACL_UNDEFINED_TAG , ACL_USER_OBJ , ACL_GROUP_OBJ , 73.Dv ACL_OTHER , ACL_MASK , 74or an implementation-defined value for which a qualifier 75is not supported, then 76.Fn acl_get_qualifier 77will return a value of 78.Vt ( void * ) Ns Dv NULL 79and the function will fail. 80.Pp 81This function may cause memory to be allocated. The caller should 82free any releasable memory, when the new qualifier is no longer 83required, by calling 84.Fn acl_free 85with 86.Vt void * 87as the argument. 88.Sh RETURN VALUES 89The 90.Fn acl_get_qualifier 91function returns a pointer to the allocated storage if successful; 92otherwise a 93.Dv NULL 94pointer is returned and the global variable 95.Va errno 96is set to indicate the error. 97.Sh ERRORS 98The 99.Fn acl_get_qualifier 100fails if: 101.Bl -tag -width Er 102.It Bq Er EINVAL 103Argument 104.Fa entry_d 105does not point to a valid descriptor for an ACL entry. The 106value of the tag type in the ACL entry referenced by argument 107.Fa entry_d 108is not 109.Dv ACL_USER 110or 111.Dv ACL_GROUP . 112.It Bq Er ENOMEM 113The value to be returned requires more memory than is allowed 114by the hardware or system-imposed memory management constraints. 115.El 116.Sh SEE ALSO 117.Xr acl 3 , 118.Xr acl_create_entry 3 , 119.Xr acl_free 3 , 120.Xr acl_get_entry 3 , 121.Xr acl_get_tag_type 3 , 122.Xr acl_set_qualifier 3 , 123.Xr acl_set_tag_type 3 , 124.Xr posix1e 3 125.Sh STANDARDS 126POSIX.1e is described in IEEE POSIX.1e draft 17. 127.Sh HISTORY 128POSIX.1e support was introduced in 129.Fx 4.0 . 130The 131.Fn acl_get_qualifier 132function was added in 133.Fx 5.0 . 134.Sh AUTHORS 135The 136.Fn acl_get_qualifier 137function was written by 138.An Chris D. Faulhaber Aq jedgar@fxp.org . 139