]> git.saurik.com Git - apple/libc.git/blame - posix1e/acl_get_qualifier.3
Libc-391.tar.gz
[apple/libc.git] / posix1e / acl_get_qualifier.3
CommitLineData
3d9156a7
A
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: src/lib/libc/posix1e/acl_get_qualifier.3,v 1.6 2002/12/27 12:15:28 schweikh Exp $
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_EXTENDED_ALLOW
54or
55.Dv ACL_EXTENDED_DENY
56The value returned by
57.Fn acl_get_qualifier
58will be a pointer to type
59.Vt guid_t .
60.Pp
61If the value of the tag type in the ACL entry referred to by
62.Fa entry_d
63is
64.Dv ACL_UNDEFINED_TAG ,
65a tag type specified by POSIX.1e but not supported
66or an implementation-defined value for which a qualifier
67is not supported, then
68.Fn acl_get_qualifier
69will return a value of
70.Vt ( void * ) Ns Dv NULL
71and the function will fail.
72.Pp
73This function may cause memory to be allocated. The caller should
74free any releasable memory, when the new qualifier is no longer
75required, by calling
76.Fn acl_free
77with
78.Vt void *
79as the argument.
80.Sh RETURN VALUES
81The
82.Fn acl_get_qualifier
83function returns a pointer to the allocated storage if successful;
84otherwise a
85.Dv NULL
86pointer is returned and the global variable
87.Va errno
88is set to indicate the error.
89.Sh ERRORS
90The
91.Fn acl_get_qualifier
92fails if:
93.Bl -tag -width Er
94.It Bq Er EINVAL
95Argument
96.Fa entry_d
97does not point to a valid descriptor for an ACL entry. The
98value of the tag type in the ACL entry referenced by argument
99.Fa entry_d
100is not
101.Dv ACL_EXTENDED_ALLOW
102or
103.Dv ACL_EXTENDED_DENY .
104.It Bq Er ENOMEM
105The value to be returned requires more memory than is allowed
106by the hardware or system-imposed memory management constraints.
107.El
108.Sh SEE ALSO
109.Xr acl 3 ,
110.Xr acl_create_entry 3 ,
111.Xr acl_free 3 ,
112.Xr acl_get_entry 3 ,
113.Xr acl_get_tag_type 3 ,
114.Xr acl_set_qualifier 3 ,
115.Xr acl_set_tag_type 3 ,
116.Xr posix1e 3
117.Sh STANDARDS
118POSIX.1e is described in IEEE POSIX.1e draft 17.
119.Sh AUTHORS
120.An Michael Smith
121.An Chris D. Faulhaber