xref: /freebsd/lib/libc/posix1e/acl_get_qualifier.3 (revision fa9896e082a1046ff4fbc75fcba4d18d1f2efc19)
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
1768b23992SWarner Losh.\" ARE DISCLAIMED.  IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
1868b23992SWarner Losh.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
1968b23992SWarner Losh.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2068b23992SWarner Losh.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2168b23992SWarner Losh.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2268b23992SWarner Losh.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2368b23992SWarner Losh.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2468b23992SWarner Losh.\" SUCH DAMAGE.
254bf60dfaSChris D. Faulhaber.\"
264bf60dfaSChris D. Faulhaber.Dd March 13, 2001
274bf60dfaSChris D. Faulhaber.Dt ACL_GET_QUALIFIER 3
284bf60dfaSChris D. Faulhaber.Os
294bf60dfaSChris D. Faulhaber.Sh NAME
304bf60dfaSChris D. Faulhaber.Nm acl_get_qualifier
31f8376ccdSRuslan Ermilov.Nd retrieve the qualifier from an ACL entry
324bf60dfaSChris D. Faulhaber.Sh LIBRARY
3331acc836SRuslan Ermilov.Lb libc
344bf60dfaSChris D. Faulhaber.Sh SYNOPSIS
3532eef9aeSRuslan Ermilov.In sys/types.h
3632eef9aeSRuslan Ermilov.In sys/acl.h
37f8376ccdSRuslan Ermilov.Ft void *
384bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier "acl_entry_t entry_d"
394bf60dfaSChris D. Faulhaber.Sh DESCRIPTION
401fae73b1SRuslan ErmilovThe
414bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
421fae73b1SRuslan Ermilovfunction
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
6757bd0fc6SJens SchweikhardtIf the value of the tag type in the ACL entry 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
791a0a9345SRuslan ErmilovThis function may cause memory to be allocated.
801a0a9345SRuslan ErmilovThe caller should
814bf60dfaSChris D. Faulhaberfree any releasable memory, when the new qualifier is no longer
824bf60dfaSChris D. Faulhaberrequired, by calling
834bf60dfaSChris D. Faulhaber.Fn acl_free
84f8376ccdSRuslan Ermilovwith
85f8376ccdSRuslan Ermilov.Vt void *
86f8376ccdSRuslan Ermilovas the argument.
874bf60dfaSChris D. Faulhaber.Sh RETURN VALUES
88f8376ccdSRuslan ErmilovThe
894bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
90f8376ccdSRuslan Ermilovfunction returns a pointer to the allocated storage if successful;
91f8376ccdSRuslan Ermilovotherwise a
92f8376ccdSRuslan Ermilov.Dv NULL
93f8376ccdSRuslan Ermilovpointer is returned and the global variable
944bf60dfaSChris D. Faulhaber.Va errno
95f8376ccdSRuslan Ermilovis set to indicate the error.
96f8376ccdSRuslan Ermilov.Sh ERRORS
97f8376ccdSRuslan ErmilovThe
98f8376ccdSRuslan Ermilov.Fn acl_get_qualifier
99f8376ccdSRuslan Ermilovfails if:
1004bf60dfaSChris D. Faulhaber.Bl -tag -width Er
1014bf60dfaSChris D. Faulhaber.It Bq Er EINVAL
1024bf60dfaSChris D. FaulhaberArgument
103f8376ccdSRuslan Ermilov.Fa entry_d
1041a0a9345SRuslan Ermilovdoes not point to a valid descriptor for an ACL entry.
1051a0a9345SRuslan ErmilovThe
1064bf60dfaSChris D. Faulhabervalue of the tag type in the ACL entry referenced by argument
107f8376ccdSRuslan Ermilov.Fa entry_d
108f8376ccdSRuslan Ermilovis not
109f8376ccdSRuslan Ermilov.Dv ACL_USER
110f8376ccdSRuslan Ermilovor
111f8376ccdSRuslan Ermilov.Dv ACL_GROUP .
1124bf60dfaSChris D. Faulhaber.It Bq Er ENOMEM
1134bf60dfaSChris D. FaulhaberThe value to be returned requires more memory than is allowed
1144bf60dfaSChris D. Faulhaberby the hardware or system-imposed memory management constraints.
1154bf60dfaSChris D. Faulhaber.El
1164bf60dfaSChris D. Faulhaber.Sh SEE ALSO
1174bf60dfaSChris D. Faulhaber.Xr acl 3 ,
1184bf60dfaSChris D. Faulhaber.Xr acl_create_entry 3 ,
1194bf60dfaSChris D. Faulhaber.Xr acl_free 3 ,
1204bf60dfaSChris D. Faulhaber.Xr acl_get_entry 3 ,
1214bf60dfaSChris D. Faulhaber.Xr acl_get_tag_type 3 ,
1224bf60dfaSChris D. Faulhaber.Xr acl_set_qualifier 3 ,
1234bf60dfaSChris D. Faulhaber.Xr acl_set_tag_type 3 ,
1244bf60dfaSChris D. Faulhaber.Xr posix1e 3
1254bf60dfaSChris D. Faulhaber.Sh STANDARDS
1264bf60dfaSChris D. FaulhaberPOSIX.1e is described in IEEE POSIX.1e draft 17.
1274bf60dfaSChris D. Faulhaber.Sh HISTORY
1284bf60dfaSChris D. FaulhaberPOSIX.1e support was introduced in
1294bf60dfaSChris D. Faulhaber.Fx 4.0 .
1304bf60dfaSChris D. FaulhaberThe
1314bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
1324bf60dfaSChris D. Faulhaberfunction was added in
1334bf60dfaSChris D. Faulhaber.Fx 5.0 .
1344bf60dfaSChris D. Faulhaber.Sh AUTHORS
1354bf60dfaSChris D. FaulhaberThe
1364bf60dfaSChris D. Faulhaber.Fn acl_get_qualifier
1374bf60dfaSChris D. Faulhaberfunction was written by
138*8fbf3d50SBaptiste Daroussin.An Chris D. Faulhaber Aq Mt jedgar@fxp.org .
139