diff options
author | David Disseldorp <ddiss@samba.org> | 2019-04-12 13:52:43 +0200 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2019-04-12 18:38:20 +0000 |
commit | 4982e282f2f2246952854ccc10d4787ac6653a7f (patch) | |
tree | da2a12180c93f1982340bfd52c1f686122f5a4f9 /source3/modules | |
parent | 2b5dbb352553699afce62dca4964eb0bd64477f8 (diff) | |
download | samba-4982e282f2f2246952854ccc10d4787ac6653a7f.tar.gz |
vfs_ceph: explicitly enable libcephfs POSIX ACL support
libcephfs disables ACL support by default and returns -EOPNOTSUPP in the
POSIX ACL get/setxattr paths as a result. Enable support by setting the
following Ceph config parameters during mount:
client acl type = posix_acl
fuse default permissions = false
Bug: https://bugzilla.samba.org/show_bug.cgi?id=13896
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/modules')
-rw-r--r-- | source3/modules/vfs_ceph.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source3/modules/vfs_ceph.c b/source3/modules/vfs_ceph.c index 38ffe08887e..cf45fb4c919 100644 --- a/source3/modules/vfs_ceph.c +++ b/source3/modules/vfs_ceph.c @@ -119,6 +119,17 @@ static int cephwrap_connect(struct vfs_handle_struct *handle, const char *servi goto err_cm_release; } + /* libcephfs disables POSIX ACL support by default, enable it... */ + ret = ceph_conf_set(cmount, "client_acl_type", "posix_acl"); + if (ret < 0) { + goto err_cm_release; + } + /* tell libcephfs to perform local permission checks */ + ret = ceph_conf_set(cmount, "fuse_default_permissions", "false"); + if (ret < 0) { + goto err_cm_release; + } + DBG_DEBUG("[CEPH] calling: ceph_mount\n"); ret = ceph_mount(cmount, NULL); if (ret < 0) { |