Unarchiving certain ZIP archives from Finder fails.
The archives contain ._ AppleDouble files in the same directory as the data files and the AppleDouble filler bytes don't contain the string "Mac OS X", so these were archives are likely not created by the OS X standard archiving utility:
$ zipinfo valid-ad.zip Archive: valid-ad.zip 407 bytes 2 files -rw-r--r-- 3.0 unx 0 bx stor 17-Jun-14 10:06 PFDinDisplayPro-Black.ttf -rw-r--r-- 3.0 unx 70 bx defN 1-May-07 20:41 ._PFDinDisplayPro-Black.ttf 2 files, 70 bytes uncompressed, 25 bytes compressed
The current code that checks whether the client is allowed to use pathnames starting with ._ checks whether the file is an AppleDouble file, and if it is and the filler does not contain the magic string "Mac OS X", access to the file is denied.
This results in the following sequence of steps:
Modify check in ad_valid_header_osx() to allow access to all .- AppleDouble files where the filler string is not "Netatalk", which is the magic string Netatalk puts there.
Log in to post a comment.