2 Unix SMB/Netbios implementation.
3 VFS module to get and set irix acls
4 Copyright (C) Michael Adam 2006
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
22 /* prototypes for private functions first - for clarity */
24 /* public functions - the api */
26 SMB_ACL_T irixacl_sys_acl_get_file(vfs_handle_struct *handle,
34 SMB_ACL_T irixacl_sys_acl_get_fd(vfs_handle_struct *handle,
42 int irixacl_sys_acl_set_file(vfs_handle_struct *handle,
51 int irixacl_sys_acl_set_fd(vfs_handle_struct *handle,
53 int fd, SMB_ACL_T theacl)
59 int irixacl_sys_acl_delete_def_file(vfs_handle_struct *handle,
66 /* private functions */
68 /* VFS operations structure */
70 static vfs_op_tuple irixacl_op_tuples[] = {
72 {SMB_VFS_OP(irixacl_sys_acl_get_file),
73 SMB_VFS_OP_SYS_ACL_GET_FILE,
74 SMB_VFS_LAYER_TRANSPARENT},
76 {SMB_VFS_OP(irixacl_sys_acl_get_fd),
77 SMB_VFS_OP_SYS_ACL_GET_FD,
78 SMB_VFS_LAYER_TRANSPARENT},
80 {SMB_VFS_OP(irixacl_sys_acl_set_file),
81 SMB_VFS_OP_SYS_ACL_SET_FILE,
82 SMB_VFS_LAYER_TRANSPARENT},
84 {SMB_VFS_OP(irixacl_sys_acl_set_fd),
85 SMB_VFS_OP_SYS_ACL_SET_FD,
86 SMB_VFS_LAYER_TRANSPARENT},
88 {SMB_VFS_OP(irixacl_sys_acl_delete_def_file),
89 SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE,
90 SMB_VFS_LAYER_TRANSPARENT},
97 NTSTATUS vfs_irixacl_init(void);
98 NTSTATUS vfs_irixacl_init(void)
100 return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "irixacl",