diff options
author | Ralph Boehme <slow@samba.org> | 2015-12-19 18:27:06 +0100 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2016-01-06 10:07:18 +0100 |
commit | 3892a7443a0d6770fd287b7f7d11ae7c0ba62b05 (patch) | |
tree | d1fca8efc9a20df4d5a36479bb19648e78e3d176 | |
parent | a48eb89ded02597b35e7a7750db9dca2052c3df6 (diff) | |
download | samba-3892a7443a0d6770fd287b7f7d11ae7c0ba62b05.tar.gz |
vfs_fruit: ignore delete on the AFP_Resource stream
OS X ignores deletes on the AFP_Resource stream. This was discovered by
torture tests against OS X SMB server.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=11347
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
(cherry picked from commit ee431fc5254dc735662d152dd19a81d439ca5e44)
-rw-r--r-- | source3/modules/vfs_fruit.c | 23 |
1 files changed, 2 insertions, 21 deletions
diff --git a/source3/modules/vfs_fruit.c b/source3/modules/vfs_fruit.c index 7201d5f6535..2561b72252c 100644 --- a/source3/modules/vfs_fruit.c +++ b/source3/modules/vfs_fruit.c @@ -2453,27 +2453,8 @@ static int fruit_unlink(vfs_handle_struct *handle, } if (is_afpresource_stream(smb_fname)) { - if (config->rsrc == FRUIT_RSRC_ADFILE) { - char *adp = NULL; - - rc = adouble_path(talloc_tos(), - smb_fname->base_name, &adp); - if (rc != 0) { - return -1; - } - /* FIXME: direct unlink(), missing smb_fname */ - rc = unlink(adp); - if ((rc == -1) && (errno == ENOENT)) { - rc = 0; - } - TALLOC_FREE(adp); - } else { - rc = SMB_VFS_REMOVEXATTR(handle->conn, - smb_fname->base_name, - AFPRESOURCE_EA_NETATALK); - } - - return rc; + /* OS X ignores deletes on the AFP_Resource stream */ + return 0; } return SMB_VFS_NEXT_UNLINK(handle, smb_fname); |