Host OS list doesn't agree with the ZIP specification
A free file archiver for extremely high compression
Brought to you by:
ipavlov
The following host OS list in CPP/7zip/Archive/Zip/ZipHandler.cpp
doesn't agree with the ZIP specification.
namespace NArchive { namespace NZip { static const char * const kHostOS[] = { "FAT" , "AMIGA" , "VMS" , "Unix" , "VM/CMS" , "Atari" , "HPFS" , "Macintosh" , "Z-System" , "CP/M" , "TOPS-20" , "NTFS" , "SMS/QDOS" , "Acorn" , "VFAT" , "MVS" , "BeOS" , "Tandem" , "OS/400" , "OS/X" };
The list seems to be for GZip, not for ZIP.
https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT says
4.4.2.2 The current mappings are: 0 - MS-DOS and OS/2 (FAT / VFAT / FAT32 file systems) 1 - Amiga 2 - OpenVMS 3 - UNIX 4 - VM/CMS 5 - Atari ST 6 - OS/2 H.P.F.S. 7 - Macintosh 8 - Z-System 9 - CP/M 10 - Windows NTFS 11 - MVS (OS/390 - Z/OS) 12 - VSE 13 - Acorn Risc 14 - VFAT 15 - alternate MVS 16 - BeOS 17 - Tandem 18 - OS/400 19 - OS X (Darwin) 20 thru 255 - unused
In particular, Windows NTFS
is displayed as TOPS-20
.
I'm sorry. I made a mistake about where to post.
I will make a patch immediately.A minimal patch:
Last edit: Takashi Toyama 2019-07-10
read appnote from info-zip:
I see what you mean. And I know that a number of programs use
11
forNTFS
.However, as Info-ZIP's appnote says,
TOPS-20
is no longer used.Is there a problem with assigning
10
(and11
) toNTFS
except the unity or reversibility?It's a matter of visualization only, not data logic.
Why 10 for ntfs, if nobody uses it?
As far as I know, a fork of the minizip and its derivatives use 10 on Windows systems.
Anyway, lets's close ticket.
Thank you for your feedback.
If so, try to find some example of such archive.
if there are no real examples, we don't need to change it.