1package IO::Compress::Zip::Constants; 2 3use strict ; 4use warnings; 5 6require Exporter; 7 8our ($VERSION, @ISA, @EXPORT, %ZIP_CM_MIN_VERSIONS); 9 10$VERSION = '2.024'; 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 ZIP_GP_FLAG_LANGUAGE_ENCODING 37 38 ZIP_EXTRA_ID_ZIP64 39 ZIP_EXTRA_ID_EXT_TIMESTAMP 40 ZIP_EXTRA_ID_INFO_ZIP_UNIX2 41 ZIP_EXTRA_ID_INFO_ZIP_UNIXn 42 ZIP_EXTRA_ID_JAVA_EXE 43 44 ZIP_OS_CODE_UNIX 45 ZIP_OS_CODE_DEFAULT 46 47 ZIP_IFA_TEXT_MASK 48 49 %ZIP_CM_MIN_VERSIONS 50 ZIP64_MIN_VERSION 51 52 ); 53 54# Compression types supported 55use constant ZIP_CM_STORE => 0 ; 56use constant ZIP_CM_DEFLATE => 8 ; 57use constant ZIP_CM_BZIP2 => 12 ; 58use constant ZIP_CM_LZMA => 14 ; # Not Supported yet 59use constant ZIP_CM_PPMD => 98 ; # Not Supported yet 60 61# General Purpose Flag 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) ; 68 69# Internal File Attributes 70use constant ZIP_IFA_TEXT_MASK => 1; 71 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; 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; 81 82use constant ZIP_OS_CODE_UNIX => 3; 83use constant ZIP_OS_CODE_DEFAULT => 3; 84 85# Extra Field ID's 86use constant ZIP_EXTRA_ID_ZIP64 => pack "v", 1; 87use constant ZIP_EXTRA_ID_EXT_TIMESTAMP => "UT"; 88use constant ZIP_EXTRA_ID_INFO_ZIP_UNIX2 => "Ux"; 89use constant ZIP_EXTRA_ID_INFO_ZIP_UNIXn => "ux"; 90use constant ZIP_EXTRA_ID_JAVA_EXE => pack "v", 0xCAFE; 91 92use constant ZIP64_MIN_VERSION => 45; 93 94%ZIP_CM_MIN_VERSIONS = ( 95 ZIP_CM_STORE() => 20, 96 ZIP_CM_DEFLATE() => 20, 97 ZIP_CM_BZIP2() => 46, 98 ZIP_CM_LZMA() => 63, 99 ); 100 101 1021; 103 104__END__ 105 106