]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
vfs_fruit: use correct case FRUIT_RSRC_STREAM in readdir_attr_rfork_size()
authorRalph Boehme <slow@samba.org>
Wed, 22 May 2019 15:02:20 +0000 (17:02 +0200)
committerKarolin Seeger <kseeger@samba.org>
Fri, 21 Jun 2019 07:56:19 +0000 (07:56 +0000)
This is a genuine bug, but luckily this would only impact configs which nobody
uses:

  fruit:metadata = netatalk
  fruit:resource = stream

With the above configuration the switch in readdir_attr_rfork_size() would hit
the default case and so always report resource forks as 0 bytes in size.

All deployment that I've seen that use fruit:resource=stream also use
fruit:metadata=stream, so the switch takes FRUIT_META_STREAM case which runs the
correct code readdir_attr_rfork_size_stream().

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>
(cherry picked from commit 83179a74119de84d20f796c241aae6bccb83a68b)

source3/modules/vfs_fruit.c

index 801b8642b6e6b5fc8d7c967be9a13ad39eac2fdb..91839c69576d31dc47f3780d1d419fd2d5c572c8 100644 (file)
@@ -3223,7 +3223,7 @@ static uint64_t readdir_attr_rfork_size(struct vfs_handle_struct *handle,
                                                             smb_fname);
                break;
 
-       case FRUIT_META_STREAM:
+       case FRUIT_RSRC_STREAM:
                rfork_size = readdir_attr_rfork_size_stream(handle,
                                                            smb_fname);
                break;