14bf60dfaSChris D. Faulhaber.\"- 24bf60dfaSChris D. Faulhaber.\" Copyright (c) 2001 Chris D. Faulhaber 34bf60dfaSChris D. Faulhaber.\" All rights reserved. 44bf60dfaSChris D. Faulhaber.\" 54bf60dfaSChris D. Faulhaber.\" Redistribution and use in source and binary forms, with or without 64bf60dfaSChris D. Faulhaber.\" modification, are permitted provided that the following conditions 74bf60dfaSChris D. Faulhaber.\" are met: 84bf60dfaSChris D. Faulhaber.\" 1. Redistributions of source code must retain the above copyright 94bf60dfaSChris D. Faulhaber.\" notice, this list of conditions and the following disclaimer. 104bf60dfaSChris D. Faulhaber.\" 2. Redistributions in binary form must reproduce the above copyright 114bf60dfaSChris D. Faulhaber.\" notice, this list of conditions and the following disclaimer in the 124bf60dfaSChris D. Faulhaber.\" documentation and/or other materials provided with the distribution. 134bf60dfaSChris D. Faulhaber.\" 144bf60dfaSChris D. Faulhaber.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 154bf60dfaSChris D. Faulhaber.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 164bf60dfaSChris D. Faulhaber.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 174bf60dfaSChris D. Faulhaber.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR THE VOICES IN HIS HEAD BE 184bf60dfaSChris D. Faulhaber.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 194bf60dfaSChris D. Faulhaber.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 204bf60dfaSChris D. Faulhaber.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 214bf60dfaSChris D. Faulhaber.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 224bf60dfaSChris D. Faulhaber.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 234bf60dfaSChris D. Faulhaber.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 244bf60dfaSChris D. Faulhaber.\" POSSIBILITY OF SUCH DAMAGE. 254bf60dfaSChris D. Faulhaber.\" 264bf60dfaSChris D. Faulhaber.\" $FreeBSD$ 274bf60dfaSChris D. Faulhaber.\" 284bf60dfaSChris D. Faulhaber.Dd March 13, 2001 294bf60dfaSChris D. Faulhaber.Dt ACL_GET_QUALIFIER 3 304bf60dfaSChris D. Faulhaber.Os 314bf60dfaSChris D. Faulhaber.Sh NAME 324bf60dfaSChris D. Faulhaber.Nm acl_get_qualifier 33f8376ccdSRuslan Ermilov.Nd retrieve the qualifier from an ACL entry 344bf60dfaSChris D. Faulhaber.Sh LIBRARY 354bf60dfaSChris D. Faulhaber.Lb libposix1e 364bf60dfaSChris D. Faulhaber.Sh SYNOPSIS 374bf60dfaSChris D. Faulhaber.Fd #include <sys/types.h> 384bf60dfaSChris D. Faulhaber.Fd #include <sys/acl.h> 39f8376ccdSRuslan Ermilov.Ft void * 404bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier "acl_entry_t entry_d" 414bf60dfaSChris D. Faulhaber.Sh DESCRIPTION 424bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 434bf60dfaSChris D. Faulhaberis a POSIX.1e call that retrieves the qualifier of the tag for 444bf60dfaSChris D. Faulhaberthe ACL entry indicated by the argument 45f8376ccdSRuslan Ermilov.Fa entry_d 464bf60dfaSChris D. Faulhaberinto working storage and returns a pointer to that storage. 474bf60dfaSChris D. Faulhaber.Pp 484bf60dfaSChris D. FaulhaberIf the value of the tag type in the ACL entry referred to by 49f8376ccdSRuslan Ermilov.Fa entry_d 50f8376ccdSRuslan Ermilovis 51f8376ccdSRuslan Ermilov.Dv ACL_USER , 52f8376ccdSRuslan Ermilovthen the value returned by 534bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 54f8376ccdSRuslan Ermilovwill be a pointer to type 55f8376ccdSRuslan Ermilov.Vt uid_t . 564bf60dfaSChris D. Faulhaber.Pp 574bf60dfaSChris D. FaulhaberIf the value of the tag type in 584bf60dfaSChris D. Faulhaberthe ACL entry referred to by 59f8376ccdSRuslan Ermilov.Fa entry_d 60f8376ccdSRuslan Ermilovis 61f8376ccdSRuslan Ermilov.Dv ACL_GROUP , 62f8376ccdSRuslan Ermilovthen the value returned by 634bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 64f8376ccdSRuslan Ermilovwill be a pointer to type 65f8376ccdSRuslan Ermilov.Vt gid_t . 664bf60dfaSChris D. Faulhaber.Pp 674bf60dfaSChris D. FaulhaberIf the value of the tag type in the ACL enty referred to by 68f8376ccdSRuslan Ermilov.Fa entry_d 69f8376ccdSRuslan Ermilovis 70f8376ccdSRuslan Ermilov.Dv ACL_UNDEFINED_TAG , ACL_USER_OBJ , ACL_GROUP_OBJ , 71f8376ccdSRuslan Ermilov.Dv ACL_OTHER , ACL_MASK , 72f8376ccdSRuslan Ermilovor an implementation-defined value for which a qualifier 734bf60dfaSChris D. Faulhaberis not supported, then 744bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 75f8376ccdSRuslan Ermilovwill return a value of 76f8376ccdSRuslan Ermilov.Vt ( void * ) Ns Dv NULL 77f8376ccdSRuslan Ermilovand the function will fail. 784bf60dfaSChris D. Faulhaber.Pp 794bf60dfaSChris D. FaulhaberThis function may cause memory to be allocated. The caller should 804bf60dfaSChris D. Faulhaberfree any releasable memory, when the new qualifier is no longer 814bf60dfaSChris D. Faulhaberrequired, by calling 824bf60dfaSChris D. Faulhaber.Fn acl_free 83f8376ccdSRuslan Ermilovwith 84f8376ccdSRuslan Ermilov.Vt void * 85f8376ccdSRuslan Ermilovas the argument. 864bf60dfaSChris D. Faulhaber.Sh RETURN VALUES 87f8376ccdSRuslan ErmilovThe 884bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 89f8376ccdSRuslan Ermilovfunction returns a pointer to the allocated storage if successful; 90f8376ccdSRuslan Ermilovotherwise a 91f8376ccdSRuslan Ermilov.Dv NULL 92f8376ccdSRuslan Ermilovpointer is returned and the global variable 934bf60dfaSChris D. Faulhaber.Va errno 94f8376ccdSRuslan Ermilovis set to indicate the error. 95f8376ccdSRuslan Ermilov.Sh ERRORS 96f8376ccdSRuslan ErmilovThe 97f8376ccdSRuslan Ermilov.Fn acl_get_qualifier 98f8376ccdSRuslan Ermilovfails if: 994bf60dfaSChris D. Faulhaber.Bl -tag -width Er 1004bf60dfaSChris D. Faulhaber.It Bq Er EINVAL 1014bf60dfaSChris D. FaulhaberArgument 102f8376ccdSRuslan Ermilov.Fa entry_d 1034bf60dfaSChris D. Faulhaberdoes not point to a valid descriptor for an ACL entry. The 1044bf60dfaSChris D. Faulhabervalue of the tag type in the ACL entry referenced by argument 105f8376ccdSRuslan Ermilov.Fa entry_d 106f8376ccdSRuslan Ermilovis not 107f8376ccdSRuslan Ermilov.Dv ACL_USER 108f8376ccdSRuslan Ermilovor 109f8376ccdSRuslan Ermilov.Dv ACL_GROUP . 1104bf60dfaSChris D. Faulhaber.It Bq Er ENOMEM 1114bf60dfaSChris D. FaulhaberThe value to be returned requires more memory than is allowed 1124bf60dfaSChris D. Faulhaberby the hardware or system-imposed memory management constraints. 1134bf60dfaSChris D. Faulhaber.El 1144bf60dfaSChris D. Faulhaber.Sh SEE ALSO 1154bf60dfaSChris D. Faulhaber.Xr acl 3 , 1164bf60dfaSChris D. Faulhaber.Xr acl_create_entry 3 , 1174bf60dfaSChris D. Faulhaber.Xr acl_free 3 , 1184bf60dfaSChris D. Faulhaber.Xr acl_get_entry 3 , 1194bf60dfaSChris D. Faulhaber.Xr acl_get_tag_type 3 , 1204bf60dfaSChris D. Faulhaber.Xr acl_set_qualifier 3 , 1214bf60dfaSChris D. Faulhaber.Xr acl_set_tag_type 3 , 1224bf60dfaSChris D. Faulhaber.Xr posix1e 3 1234bf60dfaSChris D. Faulhaber.Sh STANDARDS 1244bf60dfaSChris D. FaulhaberPOSIX.1e is described in IEEE POSIX.1e draft 17. 1254bf60dfaSChris D. Faulhaber.Sh HISTORY 1264bf60dfaSChris D. FaulhaberPOSIX.1e support was introduced in 1274bf60dfaSChris D. Faulhaber.Fx 4.0 . 1284bf60dfaSChris D. FaulhaberThe 1294bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 1304bf60dfaSChris D. Faulhaberfunction was added in 1314bf60dfaSChris D. Faulhaber.Fx 5.0 . 1324bf60dfaSChris D. Faulhaber.Sh AUTHORS 1334bf60dfaSChris D. FaulhaberThe 1344bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier 1354bf60dfaSChris D. Faulhaberfunction was written by 1364bf60dfaSChris D. Faulhaber.An Chris D. Faulhaber Aq jedgar@fxp.org . 137