Move IO::Compress from ext/ to cpan/
[p5sagit/p5-mst-13.2.git] / cpan / IO-Compress / lib / IO / Compress / Zip / Constants.pm
CommitLineData
25f0751f 1package IO::Compress::Zip::Constants;
2
3use strict ;
4use warnings;
5
6require Exporter;
7
c70c1701 8our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS);
25f0751f 9
10c2b2bb 10$VERSION = '2.021';
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
a1787f24 36 ZIP_GP_FLAG_LANGUAGE_ENCODING
25f0751f 37
e7d45986 38 ZIP_EXTRA_ID_ZIP64
c70c1701 39 ZIP_EXTRA_ID_EXT_TIMESTAMP
4e7676c7 40 ZIP_EXTRA_ID_INFO_ZIP_UNIX2
ea6efd2c 41 ZIP_EXTRA_ID_INFO_ZIP_UNIXn
42 ZIP_EXTRA_ID_JAVA_EXE
4e7676c7 43
44 ZIP_OS_CODE_UNIX
45 ZIP_OS_CODE_DEFAULT
25f0751f 46
c70c1701 47 ZIP_IFA_TEXT_MASK
25f0751f 48
c70c1701 49 %ZIP_CM_MIN_VERSIONS
e7d45986 50 ZIP64_MIN_VERSION
25f0751f 51
52 );
53
c70c1701 54# Compression types supported
55use constant ZIP_CM_STORE => 0 ;
56use constant ZIP_CM_DEFLATE => 8 ;
57use constant ZIP_CM_BZIP2 => 12 ;
4e7676c7 58use constant ZIP_CM_LZMA => 14 ; # Not Supported yet
d54256af 59use constant ZIP_CM_PPMD => 98 ; # Not Supported yet
25f0751f 60
c70c1701 61# General Purpose Flag
d54256af 62use constant ZIP_GP_FLAG_ENCRYPTED_MASK => (1 << 0) ;
63use constant ZIP_GP_FLAG_STREAMING_MASK => (1 << 3) ;
64use constant ZIP_GP_FLAG_PATCHED_MASK => (1 << 5) ;
65use constant ZIP_GP_FLAG_STRONG_ENCRYPTED_MASK => (1 << 6) ;
66use constant ZIP_GP_FLAG_LZMA_EOS_PRESENT => (1 << 1) ;
67use constant ZIP_GP_FLAG_LANGUAGE_ENCODING => (1 << 11) ;
25f0751f 68
c70c1701 69# Internal File Attributes
70use constant ZIP_IFA_TEXT_MASK => 1;
25f0751f 71
c70c1701 72# Signatures for each of the headers
73use constant ZIP_LOCAL_HDR_SIG => 0x04034b50;
74use constant ZIP_DATA_HDR_SIG => 0x08074b50;
75use constant ZIP_CENTRAL_HDR_SIG => 0x02014b50;
76use constant ZIP_END_CENTRAL_HDR_SIG => 0x06054b50;
e7d45986 77use constant ZIP64_END_CENTRAL_REC_HDR_SIG => 0x06064b50;
78use constant ZIP64_END_CENTRAL_LOC_HDR_SIG => 0x07064b50;
79use constant ZIP64_ARCHIVE_EXTRA_SIG => 0x08064b50;
80use constant ZIP64_DIGITAL_SIGNATURE_SIG => 0x05054b50;
25f0751f 81
4e7676c7 82use constant ZIP_OS_CODE_UNIX => 3;
83use constant ZIP_OS_CODE_DEFAULT => 3;
84
c70c1701 85# Extra Field ID's
e7d45986 86use constant ZIP_EXTRA_ID_ZIP64 => pack "v", 1;
c70c1701 87use constant ZIP_EXTRA_ID_EXT_TIMESTAMP => "UT";
4e7676c7 88use constant ZIP_EXTRA_ID_INFO_ZIP_UNIX2 => "Ux";
9253672d 89use constant ZIP_EXTRA_ID_INFO_ZIP_UNIXn => "ux";
a1787f24 90use constant ZIP_EXTRA_ID_JAVA_EXE => pack "v", 0xCAFE;
25f0751f 91
e7d45986 92use constant ZIP64_MIN_VERSION => 45;
93
c70c1701 94%ZIP_CM_MIN_VERSIONS = (
95 ZIP_CM_STORE() => 20,
96 ZIP_CM_DEFLATE() => 20,
97 ZIP_CM_BZIP2() => 46,
4e7676c7 98 ZIP_CM_LZMA() => 63,
c70c1701 99 );
25f0751f 100
25f0751f 101
c70c1701 1021;
25f0751f 103
c70c1701 104__END__
25f0751f 105