On Fri, 29 Mar 2024 18:25:18 GMT, Jiangli Zhou <jian...@openjdk.org> wrote:
>> it's in APPNOTE.TXT 4.5, the extra field structure is `header1+data1 + >> header2+data2 . . .`, and we have to iterate through to see if there's an >> entry that's a zip64 extended information extra field > > Thanks! That's helpful. I couldn't find the information earlier. > > According to the spec (quoted below), finding the `Header ID` field can be > used to identify the type of data, which is the logic done here. Could you > please a comment above the `while` block with some of the related details? > Thanks. > > > > The Header ID field indicates the type of data that is in > the following data block. > > 4.5.2 The current Header ID mappings defined by PKWARE are: > > 0x0001 Zip64 extended information extra field > 0x0007 AV Info > 0x0008 Reserved for extended language encoding data (PFS) > (see APPENDIX D) > 0x0009 OS/2 > 0x000a NTFS > 0x000c OpenVMS > 0x000d UNIX > 0x000e Reserved for file stream and fork descriptors > 0x000f Patch Descriptor > 0x0014 PKCS#7 Store for X.509 Certificates > 0x0015 X.509 Certificate ID and Signature for > individual file > 0x0016 X.509 Certificate ID for Central Directory > 0x0017 Strong Encryption Header > 0x0018 Record Management Controls > 0x0019 PKCS#7 Encryption Recipient Certificate List > 0x0020 Reserved for Timestamp record > 0x0021 Policy Decryption Key Record > 0x0022 Smartcrypt Key Provider Record > 0x0023 Smartcrypt Policy Key Data Record > 0x0065 IBM S/390 (Z390), AS/400 (I400) attributes > - uncompressed > 0x0066 Reserved for IBM S/390 (Z390), AS/400 (I400) > attributes - compressed > 0x4690 POSZIP 4690 (reserved) Added a comment ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/18479#discussion_r1546911763