Commit | Line | Data |
---|---|---|
25f0751f | 1 | package IO::Compress::Zip::Constants; |
2 | ||
3 | use strict ; | |
4 | use warnings; | |
5 | ||
6 | require Exporter; | |
7 | ||
c70c1701 | 8 | our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS); |
25f0751f | 9 | |
be714331 | 10 | $VERSION = '2.010'; |
25f0751f | 11 | |
12 | @ISA = qw(Exporter); | |
13 | ||
14 | @EXPORT= qw( | |
15 | ||
2b4e0969 | 16 | ZIP_CM_STORE |
c70c1701 | 17 | ZIP_CM_DEFLATE |
2b4e0969 | 18 | ZIP_CM_BZIP2 |
4e7676c7 | 19 | ZIP_CM_LZMA |
d54256af | 20 | ZIP_CM_PPMD |
c70c1701 | 21 | |
22 | ZIP_LOCAL_HDR_SIG | |
23 | ZIP_DATA_HDR_SIG | |
24 | ZIP_CENTRAL_HDR_SIG | |
25 | ZIP_END_CENTRAL_HDR_SIG | |
e7d45986 | 26 | ZIP64_END_CENTRAL_REC_HDR_SIG |
27 | ZIP64_END_CENTRAL_LOC_HDR_SIG | |
28 | ZIP64_ARCHIVE_EXTRA_SIG | |
29 | ZIP64_DIGITAL_SIGNATURE_SIG | |
25f0751f | 30 | |
258133d1 | 31 | ZIP_GP_FLAG_ENCRYPTED_MASK |
c70c1701 | 32 | ZIP_GP_FLAG_STREAMING_MASK |
258133d1 | 33 | ZIP_GP_FLAG_PATCHED_MASK |
34 | ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK | |
80e5fcd6 | 35 | ZIP_GP_FLAG_LZMA_EOS_PRESENT |
25f0751f | 36 | |
e7d45986 | 37 | ZIP_EXTRA_ID_ZIP64 |
c70c1701 | 38 | ZIP_EXTRA_ID_EXT_TIMESTAMP |
4e7676c7 | 39 | ZIP_EXTRA_ID_INFO_ZIP_UNIX2 |
40 | ||
41 | ZIP_OS_CODE_UNIX | |
42 | ZIP_OS_CODE_DEFAULT | |
25f0751f | 43 | |
c70c1701 | 44 | ZIP_IFA_TEXT_MASK |
25f0751f | 45 | |
c70c1701 | 46 | %ZIP_CM_MIN_VERSIONS |
e7d45986 | 47 | ZIP64_MIN_VERSION |
25f0751f | 48 | |
49 | ); | |
50 | ||
c70c1701 | 51 | # Compression types supported |
52 | use constant ZIP_CM_STORE => 0 ; | |
53 | use constant ZIP_CM_DEFLATE => 8 ; | |
54 | use constant ZIP_CM_BZIP2 => 12 ; | |
4e7676c7 | 55 | use constant ZIP_CM_LZMA => 14 ; # Not Supported yet |
d54256af | 56 | use constant ZIP_CM_PPMD => 98 ; # Not Supported yet |
25f0751f | 57 | |
c70c1701 | 58 | # General Purpose Flag |
d54256af | 59 | use constant ZIP_GP_FLAG_ENCRYPTED_MASK => (1 << 0) ; |
60 | use constant ZIP_GP_FLAG_STREAMING_MASK => (1 << 3) ; | |
61 | use constant ZIP_GP_FLAG_PATCHED_MASK => (1 << 5) ; | |
62 | use constant ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK => (1 << 6) ; | |
63 | use constant ZIP_GP_FLAG_LZMA_EOS_PRESENT => (1 << 1) ; | |
64 | use constant ZIP_GP_FLAG_LANGUAGE_ENCODING => (1 << 11) ; | |
25f0751f | 65 | |
c70c1701 | 66 | # Internal File Attributes |
67 | use constant ZIP_IFA_TEXT_MASK => 1; | |
25f0751f | 68 | |
c70c1701 | 69 | # Signatures for each of the headers |
70 | use constant ZIP_LOCAL_HDR_SIG => 0x04034b50; | |
71 | use constant ZIP_DATA_HDR_SIG => 0x08074b50; | |
72 | use constant ZIP_CENTRAL_HDR_SIG => 0x02014b50; | |
73 | use constant ZIP_END_CENTRAL_HDR_SIG => 0x06054b50; | |
e7d45986 | 74 | use constant ZIP64_END_CENTRAL_REC_HDR_SIG => 0x06064b50; |
75 | use constant ZIP64_END_CENTRAL_LOC_HDR_SIG => 0x07064b50; | |
76 | use constant ZIP64_ARCHIVE_EXTRA_SIG => 0x08064b50; | |
77 | use constant ZIP64_DIGITAL_SIGNATURE_SIG => 0x05054b50; | |
25f0751f | 78 | |
4e7676c7 | 79 | use constant ZIP_OS_CODE_UNIX => 3; |
80 | use constant ZIP_OS_CODE_DEFAULT => 3; | |
81 | ||
c70c1701 | 82 | # Extra Field ID's |
e7d45986 | 83 | use constant ZIP_EXTRA_ID_ZIP64 => pack "v", 1; |
c70c1701 | 84 | use constant ZIP_EXTRA_ID_EXT_TIMESTAMP => "UT"; |
4e7676c7 | 85 | use constant ZIP_EXTRA_ID_INFO_ZIP_UNIX2 => "Ux"; |
25f0751f | 86 | |
e7d45986 | 87 | use constant ZIP64_MIN_VERSION => 45; |
88 | ||
c70c1701 | 89 | %ZIP_CM_MIN_VERSIONS = ( |
90 | ZIP_CM_STORE() => 20, | |
91 | ZIP_CM_DEFLATE() => 20, | |
92 | ZIP_CM_BZIP2() => 46, | |
4e7676c7 | 93 | ZIP_CM_LZMA() => 63, |
c70c1701 | 94 | ); |
25f0751f | 95 | |
25f0751f | 96 | |
c70c1701 | 97 | 1; |
25f0751f | 98 | |
c70c1701 | 99 | __END__ |
25f0751f | 100 |