xref: /freebsd/lib/libc/posix1e/acl_get_qualifier.3 (revision 1a0a934547909744a6a2fa4cfd5b795ec6394f05)
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
3531acc836SRuslan Ermilov.Lb libc
364bf60dfaSChris D. Faulhaber.Sh SYNOPSIS
3732eef9aeSRuslan Ermilov.In sys/types.h
3832eef9aeSRuslan Ermilov.In sys/acl.h
39f8376ccdSRuslan Ermilov.Ft void *
404bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier "acl_entry_t entry_d"
414bf60dfaSChris D. Faulhaber.Sh DESCRIPTION
421fae73b1SRuslan ErmilovThe
434bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
441fae73b1SRuslan Ermilovfunction
454bf60dfaSChris D. Faulhaberis a POSIX.1e call that retrieves the qualifier of the tag for
464bf60dfaSChris D. Faulhaberthe ACL entry indicated by the argument
47f8376ccdSRuslan Ermilov.Fa entry_d
484bf60dfaSChris D. Faulhaberinto working storage and returns a pointer to that storage.
494bf60dfaSChris D. Faulhaber.Pp
504bf60dfaSChris D. FaulhaberIf the value of the tag type in the ACL entry referred to by
51f8376ccdSRuslan Ermilov.Fa entry_d
52f8376ccdSRuslan Ermilovis
53f8376ccdSRuslan Ermilov.Dv ACL_USER ,
54f8376ccdSRuslan Ermilovthen the value returned by
554bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
56f8376ccdSRuslan Ermilovwill be a pointer to type
57f8376ccdSRuslan Ermilov.Vt uid_t .
584bf60dfaSChris D. Faulhaber.Pp
594bf60dfaSChris D. FaulhaberIf the value of the tag type in
604bf60dfaSChris D. Faulhaberthe ACL entry referred to by
61f8376ccdSRuslan Ermilov.Fa entry_d
62f8376ccdSRuslan Ermilovis
63f8376ccdSRuslan Ermilov.Dv ACL_GROUP ,
64f8376ccdSRuslan Ermilovthen the value returned by
654bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
66f8376ccdSRuslan Ermilovwill be a pointer to type
67f8376ccdSRuslan Ermilov.Vt gid_t .
684bf60dfaSChris D. Faulhaber.Pp
6957bd0fc6SJens SchweikhardtIf the value of the tag type in the ACL entry referred to by
70f8376ccdSRuslan Ermilov.Fa entry_d
71f8376ccdSRuslan Ermilovis
72f8376ccdSRuslan Ermilov.Dv ACL_UNDEFINED_TAG , ACL_USER_OBJ , ACL_GROUP_OBJ ,
73f8376ccdSRuslan Ermilov.Dv ACL_OTHER , ACL_MASK ,
74f8376ccdSRuslan Ermilovor an implementation-defined value for which a qualifier
754bf60dfaSChris D. Faulhaberis not supported, then
764bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
77f8376ccdSRuslan Ermilovwill return a value of
78f8376ccdSRuslan Ermilov.Vt ( void * ) Ns Dv NULL
79f8376ccdSRuslan Ermilovand the function will fail.
804bf60dfaSChris D. Faulhaber.Pp
811a0a9345SRuslan ErmilovThis function may cause memory to be allocated.
821a0a9345SRuslan ErmilovThe caller should
834bf60dfaSChris D. Faulhaberfree any releasable memory, when the new qualifier is no longer
844bf60dfaSChris D. Faulhaberrequired, by calling
854bf60dfaSChris D. Faulhaber.Fn acl_free
86f8376ccdSRuslan Ermilovwith
87f8376ccdSRuslan Ermilov.Vt void *
88f8376ccdSRuslan Ermilovas the argument.
894bf60dfaSChris D. Faulhaber.Sh RETURN VALUES
90f8376ccdSRuslan ErmilovThe
914bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
92f8376ccdSRuslan Ermilovfunction returns a pointer to the allocated storage if successful;
93f8376ccdSRuslan Ermilovotherwise a
94f8376ccdSRuslan Ermilov.Dv NULL
95f8376ccdSRuslan Ermilovpointer is returned and the global variable
964bf60dfaSChris D. Faulhaber.Va errno
97f8376ccdSRuslan Ermilovis set to indicate the error.
98f8376ccdSRuslan Ermilov.Sh ERRORS
99f8376ccdSRuslan ErmilovThe
100f8376ccdSRuslan Ermilov.Fn acl_get_qualifier
101f8376ccdSRuslan Ermilovfails if:
1024bf60dfaSChris D. Faulhaber.Bl -tag -width Er
1034bf60dfaSChris D. Faulhaber.It Bq Er EINVAL
1044bf60dfaSChris D. FaulhaberArgument
105f8376ccdSRuslan Ermilov.Fa entry_d
1061a0a9345SRuslan Ermilovdoes not point to a valid descriptor for an ACL entry.
1071a0a9345SRuslan ErmilovThe
1084bf60dfaSChris D. Faulhabervalue of the tag type in the ACL entry referenced by argument
109f8376ccdSRuslan Ermilov.Fa entry_d
110f8376ccdSRuslan Ermilovis not
111f8376ccdSRuslan Ermilov.Dv ACL_USER
112f8376ccdSRuslan Ermilovor
113f8376ccdSRuslan Ermilov.Dv ACL_GROUP .
1144bf60dfaSChris D. Faulhaber.It Bq Er ENOMEM
1154bf60dfaSChris D. FaulhaberThe value to be returned requires more memory than is allowed
1164bf60dfaSChris D. Faulhaberby the hardware or system-imposed memory management constraints.
1174bf60dfaSChris D. Faulhaber.El
1184bf60dfaSChris D. Faulhaber.Sh SEE ALSO
1194bf60dfaSChris D. Faulhaber.Xr acl 3 ,
1204bf60dfaSChris D. Faulhaber.Xr acl_create_entry 3 ,
1214bf60dfaSChris D. Faulhaber.Xr acl_free 3 ,
1224bf60dfaSChris D. Faulhaber.Xr acl_get_entry 3 ,
1234bf60dfaSChris D. Faulhaber.Xr acl_get_tag_type 3 ,
1244bf60dfaSChris D. Faulhaber.Xr acl_set_qualifier 3 ,
1254bf60dfaSChris D. Faulhaber.Xr acl_set_tag_type 3 ,
1264bf60dfaSChris D. Faulhaber.Xr posix1e 3
1274bf60dfaSChris D. Faulhaber.Sh STANDARDS
1284bf60dfaSChris D. FaulhaberPOSIX.1e is described in IEEE POSIX.1e draft 17.
1294bf60dfaSChris D. Faulhaber.Sh HISTORY
1304bf60dfaSChris D. FaulhaberPOSIX.1e support was introduced in
1314bf60dfaSChris D. Faulhaber.Fx 4.0 .
1324bf60dfaSChris D. FaulhaberThe
1334bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
1344bf60dfaSChris D. Faulhaberfunction was added in
1354bf60dfaSChris D. Faulhaber.Fx 5.0 .
1364bf60dfaSChris D. Faulhaber.Sh AUTHORS
1374bf60dfaSChris D. FaulhaberThe
1384bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
1394bf60dfaSChris D. Faulhaberfunction was written by
1404bf60dfaSChris D. Faulhaber.An Chris D. Faulhaber Aq jedgar@fxp.org .
141