[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Fri Apr 12 19:41:02 UTC 2019


The branch, master has been updated
       via  58314d71ea6 docs/vfs_ceph: describe new ACL behaviour
       via  4982e282f2f vfs_ceph: explicitly enable libcephfs POSIX ACL support
       via  2b5dbb35255 build: add explicit cephfs include path for vfs_ceph builds
      from  289201277cd ctdb-common: Avoid race between fd and signal events

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 58314d71ea63e36d5f1bbd2c3e190b1edffee726
Author: David Disseldorp <ddiss at samba.org>
Date:   Fri Apr 12 13:55:50 2019 +0200

    docs/vfs_ceph: describe new ACL behaviour
    
    vfs_ceph now explicitly enables libcephfs POSIX ACL support.
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=13896
    
    Signed-off-by: David Disseldorp <ddiss at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Fri Apr 12 19:40:25 UTC 2019 on sn-devel-144

commit 4982e282f2f2246952854ccc10d4787ac6653a7f
Author: David Disseldorp <ddiss at samba.org>
Date:   Fri Apr 12 13:52:43 2019 +0200

    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 at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>

commit 2b5dbb352553699afce62dca4964eb0bd64477f8
Author: David Disseldorp <ddiss at samba.org>
Date:   Tue Mar 26 18:12:04 2019 +0100

    build: add explicit cephfs include path for vfs_ceph builds
    
    Needed if building with a custom --with-libcephfs path.
    
    Signed-off-by: David Disseldorp <ddiss at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>

-----------------------------------------------------------------------

Summary of changes:
 ctdb/wscript                     |  2 +-
 docs-xml/manpages/vfs_ceph.8.xml | 11 +++++++++++
 source3/modules/vfs_ceph.c       | 11 +++++++++++
 source3/modules/wscript_build    |  3 ++-
 4 files changed, 25 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/ctdb/wscript b/ctdb/wscript
index 3fa525b564d..7873130d5ee 100644
--- a/ctdb/wscript
+++ b/ctdb/wscript
@@ -682,7 +682,7 @@ def build(bld):
         bld.SAMBA_BINARY('ctdb_mutex_ceph_rados_helper',
                          source='utils/ceph/ctdb_mutex_ceph_rados_helper.c',
 			 deps='talloc tevent rados ceph-common',
-			 includes='include',
+			 includes=bld.CONFIG_GET('CPPPATH_RADOS'),
 			 install_path='${CTDB_HELPER_BINDIR}')
 
     sed_expr1 = 's|/usr/local/var/lib/ctdb|%s|g'  % (bld.env.CTDB_VARDIR)
diff --git a/docs-xml/manpages/vfs_ceph.8.xml b/docs-xml/manpages/vfs_ceph.8.xml
index 453052ebae9..5b32122113a 100644
--- a/docs-xml/manpages/vfs_ceph.8.xml
+++ b/docs-xml/manpages/vfs_ceph.8.xml
@@ -49,6 +49,17 @@
 		list. Modules added to this list to the right of the ceph
 		entry may not have any effect at all.
 	</para>
+
+	<para>
+		<command>vfs_ceph</command> performs mapping between Windows and
+		POSIX Access Control Lists (ACLs). To ensure correct processing
+		and enforcement of POSIX ACLs, the following Ceph configuration
+		parameters are automatically applied:
+	</para>
+	<programlisting>
+		<command>client acl type = posix_acl</command>
+		<command>fuse default permissions = false</command>
+	</programlisting>
 </refsect1>
 
 <refsect1>
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) {
diff --git a/source3/modules/wscript_build b/source3/modules/wscript_build
index 3d19b01908c..8d0e0ee57c1 100644
--- a/source3/modules/wscript_build
+++ b/source3/modules/wscript_build
@@ -519,7 +519,8 @@ bld.SAMBA3_MODULE('vfs_ceph',
                  init_function='',
                  internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_ceph'),
                  enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_ceph'),
-                 cflags=bld.CONFIG_GET('CFLAGS_CEPHFS'))
+                 cflags=bld.CONFIG_GET('CFLAGS_CEPHFS'),
+                 includes=bld.CONFIG_GET('CPPPATH_CEPHFS'))
 
 bld.SAMBA3_MODULE('vfs_glusterfs',
                   subsystem='vfs',


-- 
Samba Shared Repository



More information about the samba-cvs mailing list