Bug 13649 - Enabling vfs_fruit looses FinderInfo
Summary: Enabling vfs_fruit looses FinderInfo
Status: RESOLVED FIXED
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: VFS Modules (show other bugs)
Version: unspecified
Hardware: All All
: P5 normal (vote)
Target Milestone: ---
Assignee: Karolin Seeger
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-10-09 06:09 UTC by Ralph Böhme
Modified: 2018-11-06 08:11 UTC (History)
1 user (show)

See Also:


Attachments
Patch for 4.8 and 4.9 cherry-picked from master (57.17 KB, patch)
2018-10-11 06:31 UTC, Ralph Böhme
jra: review+
Details
Follow-up patch for 4.8 and 4.9, cherry-picked from master (1.21 KB, patch)
2018-10-31 15:03 UTC, Ralph Böhme
jra: review+
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ralph Böhme 2018-10-09 06:09:38 UTC
Giving the following scenario:

1. Samba server used for some time *without* any of the streams modules and with macOS clients.

2. When macOS clients create files on the server, the macOS internal APIs will create AppleDouble files (._FILE) on the server.

3. These AppleDouble contain the following marshalled data, some of it optional:
   a) FinderInfo (mandatory, fixed size 32 bytes)
   b) Extended Attributes (optional, variable size, if present part of FinderInfo)
   c) Resource Fork (optional, variable size)

4. vfs_fruit is enabled on the server

5. vfs_fruit has a conversion routing to migrate the above data from the AppleDouble file to the stream backend, unfortunately 3a is tied to 3b, that is FinderInfo only gets migrated if the AppleDouble file only contains xattr data. As the latter is only optional, for many AppleDouble files we fail to convert correctly.
Comment 1 Ralph Böhme 2018-10-11 06:31:43 UTC
Created attachment 14527 [details]
Patch for 4.8 and 4.9 cherry-picked from master
Comment 2 Jeremy Allison 2018-10-12 20:17:11 UTC
Comment on attachment 14527 [details]
Patch for 4.8 and 4.9 cherry-picked from master

LGTM.
Comment 3 Jeremy Allison 2018-10-12 20:17:32 UTC
Re-assigning to Karolin for inclusion in 4.9.next, 4.8.next.
Comment 4 Karolin Seeger 2018-10-18 10:59:46 UTC
(In reply to Jeremy Allison from comment #3)
Pushed to autobuild-v4-{9,8}-test.
Comment 5 Karolin Seeger 2018-10-19 08:08:58 UTC
(In reply to Karolin Seeger from comment #4)
Pushed to both branches.
Closing out bug report.

Thanks!
Comment 6 Ralph Böhme 2018-10-31 15:03:42 UTC
Created attachment 14553 [details]
Follow-up patch for 4.8 and 4.9, cherry-picked from master
Comment 7 Jeremy Allison 2018-10-31 17:50:55 UTC
Comment on attachment 14553 [details]
Follow-up patch for 4.8 and 4.9, cherry-picked from master

LGTM.
Comment 8 Jeremy Allison 2018-10-31 17:51:17 UTC
Re-assigning back to Karolin for inclusion in 4.9.next, 4.8.next.
Comment 9 Ralph Böhme 2018-11-01 12:52:49 UTC
Karolin, please push the following dependent bugs in this order:

bug 13649 (this one)
bug 13642
bug 13646
Comment 10 Karolin Seeger 2018-11-01 12:59:20 UTC
Pushed follw-up patch to autobuild-v4-{9,8}-test.
Comment 11 Karolin Seeger 2018-11-06 08:11:33 UTC
(In reply to Karolin Seeger from comment #10)
Pushed to both branches.
Closing out bug report.

Thanks!