1 package IO::Compress::Zip::Constants;
8 our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS);
25 ZIP_END_CENTRAL_HDR_SIG
26 ZIP64_END_CENTRAL_REC_HDR_SIG
27 ZIP64_END_CENTRAL_LOC_HDR_SIG
28 ZIP64_ARCHIVE_EXTRA_SIG
29 ZIP64_DIGITAL_SIGNATURE_SIG
31 ZIP_GP_FLAG_ENCRYPTED_MASK
32 ZIP_GP_FLAG_STREAMING_MASK
33 ZIP_GP_FLAG_PATCHED_MASK
34 ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK
35 ZIP_GP_FLAG_LZMA_EOS_PRESENT
36 ZIP_GP_FLAG_LANGUAGE_ENCODING
39 ZIP_EXTRA_ID_EXT_TIMESTAMP
40 ZIP_EXTRA_ID_INFO_ZIP_UNIX2
41 ZIP_EXTRA_ID_INFO_ZIP_UNIXn
54 # Compression types supported
55 use constant ZIP_CM_STORE => 0 ;
56 use constant ZIP_CM_DEFLATE => 8 ;
57 use constant ZIP_CM_BZIP2 => 12 ;
58 use constant ZIP_CM_LZMA => 14 ; # Not Supported yet
59 use constant ZIP_CM_PPMD => 98 ; # Not Supported yet
61 # General Purpose Flag
62 use constant ZIP_GP_FLAG_ENCRYPTED_MASK => (1 << 0) ;
63 use constant ZIP_GP_FLAG_STREAMING_MASK => (1 << 3) ;
64 use constant ZIP_GP_FLAG_PATCHED_MASK => (1 << 5) ;
65 use constant ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK => (1 << 6) ;
66 use constant ZIP_GP_FLAG_LZMA_EOS_PRESENT => (1 << 1) ;
67 use constant ZIP_GP_FLAG_LANGUAGE_ENCODING => (1 << 11) ;
69 # Internal File Attributes
70 use constant ZIP_IFA_TEXT_MASK => 1;
72 # Signatures for each of the headers
73 use constant ZIP_LOCAL_HDR_SIG => 0x04034b50;
74 use constant ZIP_DATA_HDR_SIG => 0x08074b50;
75 use constant ZIP_CENTRAL_HDR_SIG => 0x02014b50;
76 use constant ZIP_END_CENTRAL_HDR_SIG => 0x06054b50;
77 use constant ZIP64_END_CENTRAL_REC_HDR_SIG => 0x06064b50;
78 use constant ZIP64_END_CENTRAL_LOC_HDR_SIG => 0x07064b50;
79 use constant ZIP64_ARCHIVE_EXTRA_SIG => 0x08064b50;
80 use constant ZIP64_DIGITAL_SIGNATURE_SIG => 0x05054b50;
82 use constant ZIP_OS_CODE_UNIX => 3;
83 use constant ZIP_OS_CODE_DEFAULT => 3;
86 use constant ZIP_EXTRA_ID_ZIP64 => pack "v", 1;
87 use constant ZIP_EXTRA_ID_EXT_TIMESTAMP => "UT";
88 use constant ZIP_EXTRA_ID_INFO_ZIP_UNIX2 => "Ux";
89 use constant ZIP_EXTRA_ID_INFO_ZIP_UNIXn => "ux";
90 use constant ZIP_EXTRA_ID_JAVA_EXE => pack "v", 0xCAFE;
92 use constant ZIP64_MIN_VERSION => 45;
94 %ZIP_CM_MIN_VERSIONS = (
96 ZIP_CM_DEFLATE() => 20,