acl_get.3 (09c817ba36db7c3a4ff5e25ac55816ca181a403d) | acl_get.3 (a889d1fb766450bff9b27c3bccfe18fc39cd753d) |
---|---|
1.\"- | 1.\"- |
2.\" Copyright (c) 2000, 2002 Robert N. M. Watson | 2.\" Copyright (c) 2000 Robert N. M. Watson |
3.\" All rights reserved. 4.\" | 3.\" All rights reserved. 4.\" |
5.\" This software was developed by Robert Watson for the TrustedBSD Project. 6.\" | |
7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. --- 5 unchanged lines hidden (view full) --- 20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26.\" SUCH DAMAGE. 27.\" | 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. --- 5 unchanged lines hidden (view full) --- 18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24.\" SUCH DAMAGE. 25.\" |
28.\" $FreeBSD$ | 26.\" $FreeBSD$ |
29.\" | 27.\" |
30.Dd June 25, 2009 | 28.Dd January 28, 2000 |
31.Dt ACL_GET 3 | 29.Dt ACL_GET 3 |
32.Os | 30.Os FreeBSD 4.0 |
33.Sh NAME | 31.Sh NAME |
34.Nm acl_get_fd , 35.Nm acl_get_fd_np , | 32.Fd int |
36.Nm acl_get_file , | 33.Nm acl_get_file , |
37.Nm acl_get_link_np 38.Nd get an ACL for a file 39.Sh LIBRARY 40.Lb libc | 34.Nm acl_get_fd , 35.Nm acl_get_fd_np 36.Nd Get an ACL for a file |
41.Sh SYNOPSIS | 37.Sh SYNOPSIS |
42.In sys/types.h 43.In sys/acl.h 44.Ft acl_t | 38.Fd #include <sys/types.h> 39.Fd #include <sys/acl.h> 40.Ft int 41.Fn acl_get_file "const char *path_p" "acl_type_t type" 42.Ft int |
45.Fn acl_get_fd "int fd" | 43.Fn acl_get_fd "int fd" |
46.Ft acl_t | 44.Ft int |
47.Fn acl_get_fd_np "int fd" "acl_type_t type" | 45.Fn acl_get_fd_np "int fd" "acl_type_t type" |
48.Ft acl_t 49.Fn acl_get_file "const char *path_p" "acl_type_t type" 50.Ft acl_t 51.Fn acl_get_link_np "const char *path_p" "acl_type_t type" | |
52.Sh DESCRIPTION 53The | 46.Sh DESCRIPTION 47The |
54.Fn acl_get_fd , | |
55.Fn acl_get_file , | 48.Fn acl_get_file , |
56.Fn acl_get_link_np , | 49.Fn acl_get_fd , |
57and 58.Fn acl_get_fd_np 59each allow the retrieval of an ACL from a file. | 50and 51.Fn acl_get_fd_np 52each allow the retrieval of an ACL from a file. |
60The 61.Fn acl_get_fd | 53.Fn acl_get_file 54is a POSIX.1e call that allows the retrieval of a 55specified type of ACL from a file by name; 56.Fn acl_get_fd |
62is a POSIX.1e call that allows the retrieval of an ACL of type 63ACL_TYPE_ACCESS 64from a file descriptor. | 57is a POSIX.1e call that allows the retrieval of an ACL of type 58ACL_TYPE_ACCESS 59from a file descriptor. |
65The | |
66.Fn acl_get_fd_np | 60.Fn acl_get_fd_np |
67function | |
68is a non-portable form of 69.Fn acl_get_fd 70that allows the retrieval of any type of ACL from a file descriptor. | 61is a non-portable form of 62.Fn acl_get_fd 63that allows the retrieval of any type of ACL from a file descriptor. |
71The 72.Fn acl_get_file 73function is a POSIX.1e call that allows the retrieval of a 74specified type of ACL from a file by name; 75.Fn acl_get_link_np 76is a non-portable variation on 77.Fn acl_get_file 78which does not follow a symlink if the target of the call is a 79symlink. 80.Pp 81These functions may cause memory to be allocated. 82The caller should free 83any releasable memory, when the new ACL is no longer required, by calling | 64 65This function may cause memory to be allocated. The caller should free 66any releaseable memory, when the new ACL is no longer required, by calling |
84.Xr acl_free 3 85with the 86.Va (void *)acl_t 87as an argument. | 67.Xr acl_free 3 68with the 69.Va (void *)acl_t 70as an argument. |
88.Pp | 71 |
89The ACL in the working storage is an independent copy of the ACL associated 90with the object referred to by 91.Va fd . 92The ACL in the working storage shall not participate in any access control 93decisions. | 72The ACL in the working storage is an independent copy of the ACL associated 73with the object referred to by 74.Va fd . 75The ACL in the working storage shall not participate in any access control 76decisions. |
94.Pp 95Valid values for the 96.Va type 97argument are: 98.Pp 99.Bl -column -offset 3n "ACL_TYPE_DEFAULT" 100.It ACL_TYPE_ACCESS POSIX.1e access ACL 101.It ACL_TYPE_DEFAULT POSIX.1e default ACL 102.It ACL_TYPE_NFS4 NFSv4 ACL 103.El 104.Pp 105The ACL returned will be branded accordingly. | |
106.Sh IMPLEMENTATION NOTES | 77.Sh IMPLEMENTATION NOTES |
107.Fx Ns 's 108support for POSIX.1e interfaces and features is still under | 78FreeBSD's support for POSIX.1e interfaces and features is still under |
109development at this time. 110.Sh RETURN VALUES 111Upon successful completion, the function shall return a pointer to the ACL | 79development at this time. 80.Sh RETURN VALUES 81Upon successful completion, the function shall return a pointer to the ACL |
112that was retrieved. 113Otherwise, a value of | 82that was retrieved. Otherwise, a value of |
114.Va (acl_t)NULL 115shall be returned, and 116.Va errno 117shall be set to indicate the error. 118.Sh ERRORS 119If any of the following conditions occur, the 120.Fn acl_get_fd 121function shall return a value of --- 22 unchanged lines hidden (view full) --- 144Insufficient memory available to fulfill request. 145.It Bq Er EOPNOTSUPP 146The file system does not support ACL retrieval. 147.El 148.Sh SEE ALSO 149.Xr acl 3 , 150.Xr acl_free 3 , 151.Xr acl_get 3 , | 83.Va (acl_t)NULL 84shall be returned, and 85.Va errno 86shall be set to indicate the error. 87.Sh ERRORS 88If any of the following conditions occur, the 89.Fn acl_get_fd 90function shall return a value of --- 22 unchanged lines hidden (view full) --- 113Insufficient memory available to fulfill request. 114.It Bq Er EOPNOTSUPP 115The file system does not support ACL retrieval. 116.El 117.Sh SEE ALSO 118.Xr acl 3 , 119.Xr acl_free 3 , 120.Xr acl_get 3 , |
152.Xr acl_get_brand_np 3 , | |
153.Xr acl_set 3 , 154.Xr posix1e 3 155.Sh STANDARDS | 121.Xr acl_set 3 , 122.Xr posix1e 3 123.Sh STANDARDS |
156POSIX.1e is described in IEEE POSIX.1e draft 17. 157Discussion | 124POSIX.1e is described in IEEE POSIX.1e draft 17. Discussion |
158of the draft continues on the cross-platform POSIX.1e implementation | 125of the draft continues on the cross-platform POSIX.1e implementation |
159mailing list. 160To join this list, see the 161.Fx 162POSIX.1e implementation | 126mailing list. To join this list, see the FreeBSD POSIX.1e implementation |
163page for more information. 164.Sh HISTORY | 127page for more information. 128.Sh HISTORY |
165POSIX.1e support was introduced in 166.Fx 4.0 , 167and development continues. | 129POSIX.1e support was introduced in FreeBSD 4.0, and development continues. |
168.Sh AUTHORS | 130.Sh AUTHORS |
169.An Robert N M Watson | 131Robert N M Watson 132.Sh BUGS 133These features are not yet fully implemented. In particular, the shipped 134version of UFS/FFS does not support storage of additional security labels, 135and so is unable to (easily) provide support for most of these features. |