vfs_fruit: don't unlink 0-byte size truncated streams
authorRalph Boehme <slow@samba.org>
Sat, 20 Oct 2018 12:54:48 +0000 (14:54 +0200)
committerJeremy Allison <jra@samba.org>
Wed, 31 Oct 2018 20:27:20 +0000 (21:27 +0100)
This caused all sort of havoc with subsequent SMB request that acted on
the handle of the then deleted backend storage (file or blob, depending
on the used streams module).

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

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

index caa06201308d6c5a7ccf233aa34912cc44b45e81..24486f15e9a8854c41a39b5dd3558c3f3f9884b2 100644 (file)
@@ -5816,13 +5816,6 @@ static int fruit_ftruncate(struct vfs_handle_struct *handle,
                  (intmax_t)offset);
 
        if (fio == NULL) {
-               if (offset == 0 &&
-                   global_fruit_config.nego_aapl &&
-                   is_ntfs_stream_smb_fname(fsp->fsp_name) &&
-                   !is_ntfs_default_stream_smb_fname(fsp->fsp_name))
-               {
-                       return SMB_VFS_NEXT_UNLINK(handle, fsp->fsp_name);
-               }
                return SMB_VFS_NEXT_FTRUNCATE(handle, fsp, offset);
        }