s3/vfs/nfs4_acls: avoid a stat
[Samba.git] / source3 / modules / posixacl_xattr.h
blob9e0aa5879f1341a0210e764f6a0cdbf253803350
1 /*
2 Unix SMB/Netbios implementation.
3 VFS module to get and set posix acl through xattr
4 Copyright (c) 2013 Anand Avati <avati@redhat.com>
5 Copyright (c) 2016 Yan, Zheng <zyan@redhat.com>
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef __POSIXACL_XATTR_H__
22 #define __POSIXACL_XATTR_H__
24 SMB_ACL_T posixacl_xattr_acl_get_file(vfs_handle_struct *handle,
25 const char *path_p,
26 SMB_ACL_TYPE_T type,
27 TALLOC_CTX *mem_ctx);
29 SMB_ACL_T posixacl_xattr_acl_get_fd(vfs_handle_struct *handle,
30 files_struct *fsp,
31 TALLOC_CTX *mem_ctx);
33 int posixacl_xattr_acl_set_file(vfs_handle_struct *handle,
34 const char *name,
35 SMB_ACL_TYPE_T type,
36 SMB_ACL_T theacl);
38 int posixacl_xattr_acl_set_fd(vfs_handle_struct *handle,
39 files_struct *fsp,
40 SMB_ACL_T theacl);
42 int posixacl_xattr_acl_delete_def_file(vfs_handle_struct *handle,
43 const char *path);
44 #endif