summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRalph Boehme <slow@samba.org>2015-03-25 15:09:02 +0100
committerJeremy Allison <jra@samba.org>2015-05-08 18:38:14 +0200
commit1b8a0e6a26bc212905a160c32b936ef0ea24c0b2 (patch)
treee917cddfe032116bd981d87f8a4db10edd0d2c3c
parent684c7116657c81d0d5000c76982310374c41c612 (diff)
downloadsamba-1b8a0e6a26bc212905a160c32b936ef0ea24c0b2.tar.gz
vfs_fruit: add option "nfs_aces" that controls the NFS ACEs stuff
Bug: https://bugzilla.samba.org/show_bug.cgi?id=11213 Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
-rw-r--r--docs-xml/manpages/vfs_fruit.8.xml9
-rw-r--r--source3/modules/vfs_fruit.c9
2 files changed, 16 insertions, 2 deletions
diff --git a/docs-xml/manpages/vfs_fruit.8.xml b/docs-xml/manpages/vfs_fruit.8.xml
index a9e2e6d2a54..4e296a42130 100644
--- a/docs-xml/manpages/vfs_fruit.8.xml
+++ b/docs-xml/manpages/vfs_fruit.8.xml
@@ -188,6 +188,15 @@
</listitem>
</varlistentry>
+ <varlistentry>
+ <term>fruit:nfs_aces = yes | no</term>
+ <listitem>
+ <para>Whether support for querying and modifying the
+ UNIX mode of directory entries via NFS ACEs is enabled,
+ default <emphasis>yes</emphasis>.</para>
+ </listitem>
+ </varlistentry>
+
</variablelist>
</refsect1>
diff --git a/source3/modules/vfs_fruit.c b/source3/modules/vfs_fruit.c
index 8a5588dd67d..2d56d7a191d 100644
--- a/source3/modules/vfs_fruit.c
+++ b/source3/modules/vfs_fruit.c
@@ -1338,6 +1338,10 @@ static int init_fruit_config(vfs_handle_struct *handle)
config->use_aapl = true;
}
+ if (lp_parm_bool(-1, FRUIT_PARAM_TYPE_NAME, "nfs_aces", true)) {
+ config->unix_info_enabled = true;
+ }
+
if (lp_parm_bool(SNUM(handle->conn),
"readdir_attr", "aapl_rsize", true)) {
config->readdir_attr_rsize = true;
@@ -1831,8 +1835,9 @@ static NTSTATUS check_aapl(vfs_handle_struct *handle,
* The client doesn't set the flag, so we can't check
* for it and just set it unconditionally
*/
- server_caps |= SMB2_CRTCTX_AAPL_SUPPORTS_NFS_ACE;
- config->unix_info_enabled = true;
+ if (config->unix_info_enabled) {
+ server_caps |= SMB2_CRTCTX_AAPL_SUPPORTS_NFS_ACE;
+ }
SBVAL(p, 0, server_caps);
ok = data_blob_append(req, &blob, p, 8);