trrntzipui
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
trrntzipui [2020/11/18 12:18] – gordonj | trrntzipui [2020/11/22 08:37] – johnsanc | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | Update History for Trrntzip.UI & Trrntzip.NET.exe | + | __**Update History for Trrntzip.UI & Trrntzip.NET.exe |
+ | |||
+ | Latest versions available here : [[https:// | ||
^ Trrntzip update history ^^ | ^ Trrntzip update history ^^ | ||
- | |2018-07-18| C# code updated to support zip64 format| | + | |2020-11-xx|Another edge case ZIP64 bug was found where a file is added to a zip that is initially bigger that 4Gb but compresses down to less than 4Gb. (In this case the total zip filesize is less than 4Gb.) The local header for the compressed |
- | |2019-06-11| Unicode filenames had previously be added to trrntzip format, initial implementation was any character value less that 256 was considered ASCII and any characters equal and above 256 where concidered UNICODE and if UNICODE was found the zip file would need a UNICODE stored filename, this release change the format to be any character over 127 was considered UNICODE| | + | |
- | |2020-03-13| An edge case error was found in the code that could produce a corrupt | + | |
|2020-11-xx| Further investigation into unicode filename support showed the change made in 2019-06-11 was still incorrect. [[https:// | |2020-11-xx| Further investigation into unicode filename support showed the change made in 2019-06-11 was still incorrect. [[https:// | ||
- | |2020-11-xx| Another | + | |2020-03-13| An edge case error was found in the code that could produce |
- | + | |2019-06-11| Unicode filenames had previously be added to trrntzip format, initial implementation was any character value less that 256 was considered ASCII and any characters equal and above 256 where concidered UNICODE and if UNICODE was found the zip file would need a UNICODE stored filename, this release change the format to be any character over 127 was considered UNICODE| | |
- | * If the start of the central dir in the file is >4Gb into the file. | + | |2018-07-18| C# code updated to support zip64 format| |
- | * If the size of the central dir is itself >4Gb. | + | |
- | * If there are more than 65536 files contained within the zip file. | + | |
- | None of these cases are met in this file and so the extra ZIP64 locator information should not be in the file. | + | |
- | This has now been corrected. (Interesting side note, is that WINRAR V5.91 also make this same error in the file.)| | + | |
First Trrntzip.exe was C code developed by ' | First Trrntzip.exe was C code developed by ' | ||
Line 18: | Line 14: | ||
^ C Code Trrntzip history ^^ | ^ C Code Trrntzip history ^^ | ||
- | |2007-05-09|First code commit. (by shindakun)| | ||
- | |2012-01-03|Fixed Inconsistency in trrntzip files from having un-needed directories in the zip. The new rule was added to only have directory entries in a zip files if the directory is empty.| | ||
- | |2012-01-03|Also fixed the directory separator character to be '/' | ||
|2012-02-02|Zip64 support added by ' | |2012-02-02|Zip64 support added by ' | ||
+ | |2012-01-03|Fixed the directory separator character to be '/' | ||
+ | |2012-01-03|Fixed Inconsistency in trrntzip files from having un-needed directories in the zip. The new rule was added to only have directory entries in a zip files if the directory is empty.| | ||
+ | |2007-05-09|First code commit. (by shindakun)| | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | **__The TorrentZipped Files Comments__** | ||
+ | |||
+ | The .ZIP file comments in the End of Central directory is used to check the validity of the torrentzipped | ||
+ | file. | ||
+ | |||
+ | The comment must be formatted as the 22 bytes of TORRENTZIPPED-XXXXXXXX | ||
+ | The XXXXXXXX is the CRC32 of the central directory records stored as hexadecimal upper case text. | ||
+ | (the CRC32 of the bytes in the file between Start Of Central Directory & End Of Central Directory) | ||
+ | |||
+ | This comment ensures that if any change is made to the files within the zip this checksum will no longer | ||
+ | match the byte data in the central directory, and in this way we can check the validity of a torrentzip file. | ||
+ | |||
+ | **__File Order with a TorrentZip__** | ||
+ | |||
+ | For the creation of consistent torrentzipped files, the file order is also very important. | ||
+ | Files must be sorted by filename using a lower case sort. (Unicode values.) | ||
+ | |||
+ | **__Directory separator character__** | ||
+ | |||
+ | As zips only store files (not directories), | ||
+ | the filename. For example file ‘test1.rom’ in directory ‘set1’ would be stored with a filename of | ||
+ | ‘set1/ | ||
+ | This leads to a possible naming inconsistency. The zip file format state “All slashes should be forward | ||
+ | slashes ‘/’ as opposed to backwards slashes ‘\’ “. So Torrentzip will change all ‘\’ character to ‘/’. | ||
+ | (This must be done before sorting, to ensure that the sort is performed correctly.) | ||
+ | |||
+ | **__Directory Entries and Empty Directories__** | ||
+ | |||
+ | A directory entry is stored in a zip by adding a file entry ending in a directory separator character with a | ||
+ | zero size and CRC. So directory ‘set1’ would be stored as a zero length, zero CRC file called ‘set1/ | ||
+ | Some zip programs when adding the previously mentioned file ‘set1/ | ||
+ | directory ‘set1/ | ||
+ | unnecessary, | ||
+ | this inconsistency un-needed directories should be removed from the zip, the only needed directory | ||
+ | entries are empty directories that are not implied by any file entries. | ||
+ | |||
+ | Example: | ||
+ | ^Filename^Size^CRC^ | ||
+ | |set1/ | ||
+ | |set1/ | ||
+ | |set2/ | ||
+ | |||
+ | The set1/ entry should be removed, as it is implied by the set1/ | ||
+ | kept to create the empty directory, as removing it would completely remove the set2 directory. | ||
Latest ZIP files format specifications can be found here [[https:// | Latest ZIP files format specifications can be found here [[https:// |
trrntzipui.txt · Last modified: 2024/04/10 19:08 by johnsanc