[PATCH 2/2] s3: vfs: ceph: Add posix acl support

Yan, Zheng zyan at redhat.com
Mon Mar 21 02:42:21 UTC 2016


Signed-off-by: Yan, Zheng <zyan at redhat.com>
---
 source3/modules/vfs_ceph.c | 54 +++++++---------------------------------------
 1 file changed, 8 insertions(+), 46 deletions(-)

diff --git a/source3/modules/vfs_ceph.c b/source3/modules/vfs_ceph.c
index b609d72..89221c3 100644
--- a/source3/modules/vfs_ceph.c
+++ b/source3/modules/vfs_ceph.c
@@ -36,6 +36,7 @@
 #include <sys/statvfs.h>
 #include "cephfs/libcephfs.h"
 #include "smbprofile.h"
+#include "modules/vfs_posixacl_xattr.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_VFS
@@ -1218,47 +1219,6 @@ static int cephwrap_set_offline(struct vfs_handle_struct *handle,
 	return -1;
 }
 
-static SMB_ACL_T cephwrap_sys_acl_get_file(struct vfs_handle_struct *handle,
-					   const char *path_p,
-					   SMB_ACL_TYPE_T type,
-					   TALLOC_CTX *mem_ctx)
-{
-	errno = ENOTSUP;
-	return NULL;
-}
-
-static SMB_ACL_T cephwrap_sys_acl_get_fd(struct vfs_handle_struct *handle,
-					 struct files_struct *fsp,
-					 TALLOC_CTX *mem_ctx)
-{
-	errno = ENOTSUP;
-	return NULL;
-}
-
-static int cephwrap_sys_acl_set_file(struct vfs_handle_struct *handle,
-				     const char *name,
-				     SMB_ACL_TYPE_T acltype,
-				     SMB_ACL_T theacl)
-{
-	errno = ENOTSUP;
-	return -1;
-}
-
-static int cephwrap_sys_acl_set_fd(struct vfs_handle_struct *handle,
-				   struct files_struct *fsp,
-				   SMB_ACL_T theacl)
-{
-	errno = ENOTSUP;
-	return -1;
-}
-
-static int cephwrap_sys_acl_delete_def_file(struct vfs_handle_struct *handle,
-					    const char *path)
-{
-	errno = ENOTSUP;
-	return -1;
-}
-
 static struct vfs_fn_pointers ceph_fns = {
 	/* Disk operations */
 
@@ -1331,11 +1291,13 @@ static struct vfs_fn_pointers ceph_fns = {
 	.fsetxattr_fn = cephwrap_fsetxattr,
 
 	/* Posix ACL Operations */
-	.sys_acl_get_file_fn = cephwrap_sys_acl_get_file,
-	.sys_acl_get_fd_fn = cephwrap_sys_acl_get_fd,
-	.sys_acl_set_file_fn = cephwrap_sys_acl_set_file,
-	.sys_acl_set_fd_fn = cephwrap_sys_acl_set_fd,
-	.sys_acl_delete_def_file_fn = cephwrap_sys_acl_delete_def_file,
+	.sys_acl_get_file_fn = posixacl_xattr_acl_get_file,
+	.sys_acl_get_fd_fn = posixacl_xattr_acl_get_fd,
+	.sys_acl_blob_get_file_fn = posix_sys_acl_blob_get_file,
+	.sys_acl_blob_get_fd_fn = posix_sys_acl_blob_get_fd,
+	.sys_acl_set_file_fn = posixacl_xattr_acl_set_file,
+	.sys_acl_set_fd_fn = posixacl_xattr_acl_set_fd,
+	.sys_acl_delete_def_file_fn = posixacl_xattr_acl_delete_def_file,
 
 	/* aio operations */
 	.aio_force_fn = cephwrap_aio_force,
-- 
2.5.0




More information about the samba-technical mailing list