vfs_fruit: ignore AppleDouble files in fruit_unlink()
authorRalph Boehme <slow@samba.org>
Tue, 21 May 2019 09:42:47 +0000 (11:42 +0200)
committerJeremy Allison <jra@samba.org>
Thu, 30 May 2019 20:19:27 +0000 (20:19 +0000)
Otherwise, if SMB_VFS_UNLINK() is called for an AppleDouble path "._file", we
try to delete "._._file" which doesn't make sense. AppleDouble files don't have
AppleDouble themselves.

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

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/modules/vfs_fruit.c

index 6e909d7073d04779662da96ad79c6538003bf7fa..2bd4fbadf37af4ea6deb9b07c074682f40389c5b 100644 (file)
@@ -4104,6 +4104,8 @@ static int fruit_unlink(vfs_handle_struct *handle,
                return fruit_unlink_rsrc(handle, smb_fname, false);
        } else if (is_ntfs_stream_smb_fname(smb_fname)) {
                return SMB_VFS_NEXT_UNLINK(handle, smb_fname);
+       } else if (is_adouble_file(smb_fname->base_name)) {
+               return SMB_VFS_NEXT_UNLINK(handle, smb_fname);
        }
 
        /*