summaryrefslogtreecommitdiff
path: root/source/modules/vfs_aixacl2.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/modules/vfs_aixacl2.c')
-rw-r--r--source/modules/vfs_aixacl2.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/source/modules/vfs_aixacl2.c b/source/modules/vfs_aixacl2.c
index 23c4d88134..89be21942c 100644
--- a/source/modules/vfs_aixacl2.c
+++ b/source/modules/vfs_aixacl2.c
@@ -25,7 +25,10 @@
#define AIXACL2_MODULE_NAME "aixacl2"
+extern struct current_user current_user;
extern int try_chown(connection_struct *conn, const char *fname, uid_t uid, gid_t gid);
+extern NTSTATUS unpack_nt_owners(int snum, uid_t *puser, gid_t *pgrp,
+ uint32 security_info_sent, SEC_DESC *psd);
extern SMB_ACL_T aixacl_to_smbacl( struct acl *file_acl);
extern struct acl *aixacl_smb_to_aixacl(SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl);
@@ -400,6 +403,11 @@ NTSTATUS aixjfs2_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp, uint3
return aixjfs2_set_nt_acl_common(fsp, security_info_sent, psd);
}
+NTSTATUS aixjfs2_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info_sent, SEC_DESC *psd)
+{
+ return aixjfs2_set_nt_acl_common(fsp, security_info_sent, psd);
+}
+
int aixjfs2_sys_acl_set_file(vfs_handle_struct *handle,
const char *name,
SMB_ACL_TYPE_T type,
@@ -501,6 +509,10 @@ static vfs_op_tuple aixjfs2_ops[] =
SMB_VFS_OP_FSET_NT_ACL,
SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(aixjfs2_set_nt_acl),
+ SMB_VFS_OP_SET_NT_ACL,
+ SMB_VFS_LAYER_TRANSPARENT},
+
{SMB_VFS_OP(aixjfs2_sys_acl_get_file),
SMB_VFS_OP_SYS_ACL_GET_FILE,
SMB_VFS_LAYER_TRANSPARENT},