Update Compression modules to version 2.009
[p5sagit/p5-mst-13.2.git] / ext / IO_Compress_Zlib / lib / IO / Compress / Zip / Constants.pm
1 package IO::Compress::Zip::Constants;
2
3 use strict ;
4 use warnings;
5
6 require Exporter;
7
8 our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS);
9
10 $VERSION = '2.009';
11
12 @ISA = qw(Exporter);
13
14 @EXPORT= qw(
15
16     ZIP_CM_STORE
17     ZIP_CM_DEFLATE
18     ZIP_CM_BZIP2
19     ZIP_CM_LZMA
20     ZIP_CM_PPMD
21     
22     ZIP_LOCAL_HDR_SIG
23     ZIP_DATA_HDR_SIG
24     ZIP_CENTRAL_HDR_SIG
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
30
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
37     ZIP_EXTRA_ID_ZIP64
38     ZIP_EXTRA_ID_EXT_TIMESTAMP
39     ZIP_EXTRA_ID_INFO_ZIP_UNIX2
40
41     ZIP_OS_CODE_UNIX
42     ZIP_OS_CODE_DEFAULT
43
44     ZIP_IFA_TEXT_MASK
45
46     %ZIP_CM_MIN_VERSIONS
47     ZIP64_MIN_VERSION
48
49     );
50
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 ;
55 use constant ZIP_CM_LZMA                       => 14 ; # Not Supported yet
56 use constant ZIP_CM_PPMD                       => 98 ; # Not Supported yet
57
58 # General Purpose Flag
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) ;
65
66 # Internal File Attributes
67 use constant ZIP_IFA_TEXT_MASK                 => 1;
68
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;
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;
78
79 use constant ZIP_OS_CODE_UNIX                  => 3;
80 use constant ZIP_OS_CODE_DEFAULT               => 3;
81
82 # Extra Field ID's
83 use constant ZIP_EXTRA_ID_ZIP64                => pack "v", 1;
84 use constant ZIP_EXTRA_ID_EXT_TIMESTAMP        => "UT";
85 use constant ZIP_EXTRA_ID_INFO_ZIP_UNIX2       => "Ux";
86
87 use constant ZIP64_MIN_VERSION                 => 45;
88
89 %ZIP_CM_MIN_VERSIONS = (
90             ZIP_CM_STORE()                      => 20,
91             ZIP_CM_DEFLATE()                    => 20,
92             ZIP_CM_BZIP2()                      => 46,
93             ZIP_CM_LZMA()                       => 63,
94             );
95
96
97 1;
98
99 __END__
100