1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-28 01:58:17 +03:00

vfs_fruit: only veto AppleDouble files with fruit:resource=file

vfs_fruit only creates AppleDouble files itself when "fruit:resource" is
set to "file" (the default). It is only then the these AppleDouble files
should be treated as an internal representation and should be
inaccessible from clients.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=12526>

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Uri Simchoni <uri@samba.org>
This commit is contained in:
Ralph Boehme 2017-01-19 09:30:45 +01:00 committed by Uri Simchoni
parent c7a79a9b35
commit 708767da8c
2 changed files with 14 additions and 7 deletions

View File

@ -224,10 +224,14 @@
<varlistentry>
<term>fruit:veto_appledouble = yes | no</term>
<listitem>
<para>Whether ._ AppleDouble files are vetoed which
prevents the client from seing and accessing internal
AppleDouble files created by vfs_fruit itself for the
purpose of storing a Mac resource fork.</para>
<para><emphasis>Note:</emphasis> this option only applies when
<parameter>fruit:resource</parameter> is set to
<parameter>file</parameter> (the default).</para>
<para>When <parameter>fruit:resource</parameter> is set to
<parameter>file</parameter>, vfs_fruit may create ._ AppleDouble
files. This options controls whether these ._ AppleDouble files
are vetoed which prevents the client from accessing them.</para>
<para>Vetoing ._ files may break some applications, eg
extracting Mac ZIP archives from Mac clients failes,
because they contain ._ files. Setting this option to

View File

@ -1568,9 +1568,12 @@ static int init_fruit_config(vfs_handle_struct *handle)
}
config->encoding = (enum fruit_encoding)enumval;
config->veto_appledouble = lp_parm_bool(
SNUM(handle->conn), FRUIT_PARAM_TYPE_NAME,
"veto_appledouble", true);
if (config->rsrc == FRUIT_RSRC_ADFILE) {
config->veto_appledouble = lp_parm_bool(SNUM(handle->conn),
FRUIT_PARAM_TYPE_NAME,
"veto_appledouble",
true);
}
config->use_aapl = lp_parm_bool(
-1, FRUIT_PARAM_TYPE_NAME, "aapl", true);