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