Compression Modules Update for EBCDIC
[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.008';
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     
21     ZIP_LOCAL_HDR_SIG
22     ZIP_DATA_HDR_SIG
23     ZIP_CENTRAL_HDR_SIG
24     ZIP_END_CENTRAL_HDR_SIG
25     ZIP64_END_CENTRAL_REC_HDR_SIG
26     ZIP64_END_CENTRAL_LOC_HDR_SIG
27     ZIP64_ARCHIVE_EXTRA_SIG
28     ZIP64_DIGITAL_SIGNATURE_SIG
29
30     ZIP_GP_FLAG_ENCRYPTED_MASK
31     ZIP_GP_FLAG_STREAMING_MASK
32     ZIP_GP_FLAG_PATCHED_MASK
33     ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK
34     ZIP_GP_FLAG_LZMA_EOS_PRESENT
35
36     ZIP_EXTRA_ID_ZIP64
37     ZIP_EXTRA_ID_EXT_TIMESTAMP
38     ZIP_EXTRA_ID_INFO_ZIP_UNIX2
39
40     ZIP_OS_CODE_UNIX
41     ZIP_OS_CODE_DEFAULT
42
43     ZIP_IFA_TEXT_MASK
44
45     %ZIP_CM_MIN_VERSIONS
46     ZIP64_MIN_VERSION
47
48     );
49
50 # Compression types supported
51 use constant ZIP_CM_STORE                      => 0 ;
52 use constant ZIP_CM_DEFLATE                    => 8 ;
53 use constant ZIP_CM_BZIP2                      => 12 ;
54 use constant ZIP_CM_LZMA                       => 14 ; # Not Supported yet
55
56 # General Purpose Flag
57 use constant ZIP_GP_FLAG_ENCRYPTED_MASK        => 1 ;
58 use constant ZIP_GP_FLAG_STREAMING_MASK        => 8 ;
59 use constant ZIP_GP_FLAG_PATCHED_MASK          => 32 ;
60 use constant ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK => 64 ;
61 use constant ZIP_GP_FLAG_LZMA_EOS_PRESENT      => 2 ;
62
63 # Internal File Attributes
64 use constant ZIP_IFA_TEXT_MASK                 => 1;
65
66 # Signatures for each of the headers
67 use constant ZIP_LOCAL_HDR_SIG                 => 0x04034b50;
68 use constant ZIP_DATA_HDR_SIG                  => 0x08074b50;
69 use constant ZIP_CENTRAL_HDR_SIG               => 0x02014b50;
70 use constant ZIP_END_CENTRAL_HDR_SIG           => 0x06054b50;
71 use constant ZIP64_END_CENTRAL_REC_HDR_SIG     => 0x06064b50;
72 use constant ZIP64_END_CENTRAL_LOC_HDR_SIG     => 0x07064b50;
73 use constant ZIP64_ARCHIVE_EXTRA_SIG           => 0x08064b50;
74 use constant ZIP64_DIGITAL_SIGNATURE_SIG       => 0x05054b50;
75
76 use constant ZIP_OS_CODE_UNIX                  => 3;
77 use constant ZIP_OS_CODE_DEFAULT               => 3;
78
79 # Extra Field ID's
80 use constant ZIP_EXTRA_ID_ZIP64                => pack "v", 1;
81 use constant ZIP_EXTRA_ID_EXT_TIMESTAMP        => "UT";
82 use constant ZIP_EXTRA_ID_INFO_ZIP_UNIX2       => "Ux";
83
84 use constant ZIP64_MIN_VERSION                 => 45;
85
86 %ZIP_CM_MIN_VERSIONS = (
87             ZIP_CM_STORE()                      => 20,
88             ZIP_CM_DEFLATE()                    => 20,
89             ZIP_CM_BZIP2()                      => 46,
90             ZIP_CM_LZMA()                       => 63,
91             );
92
93
94 1;
95
96 __END__
97