xref: /aosp_15_r20/external/lzma/CPP/7zip/Archive/Zip/ZipRegister.cpp (revision f6dc9357d832569d4d1f5d24eacdb3935a1ae8e6)
1 // ZipRegister.cpp
2 
3 #include "StdAfx.h"
4 
5 #include "../../Common/RegisterArc.h"
6 
7 #include "ZipHandler.h"
8 
9 namespace NArchive {
10 namespace NZip {
11 
12 static const Byte k_Signature[] = {
13     4, 0x50, 0x4B, 0x03, 0x04,               // Local
14     4, 0x50, 0x4B, 0x05, 0x06,               // Ecd
15     4, 0x50, 0x4B, 0x06, 0x06,               // Ecd64
16     6, 0x50, 0x4B, 0x07, 0x08, 0x50, 0x4B,   // Span / Descriptor
17     6, 0x50, 0x4B, 0x30, 0x30, 0x50, 0x4B }; // NoSpan
18 
19 REGISTER_ARC_IO(
20   "zip", "zip z01 zipx jar xpi odt ods docx xlsx epub ipa apk appx", NULL, 1,
21   k_Signature,
22   0,
23     NArcInfoFlags::kFindSignature
24   | NArcInfoFlags::kMultiSignature
25   | NArcInfoFlags::kUseGlobalOffset
26   | NArcInfoFlags::kCTime
27   // | NArcInfoFlags::kCTime_Default
28   | NArcInfoFlags::kATime
29   // | NArcInfoFlags::kATime_Default
30   | NArcInfoFlags::kMTime
31   | NArcInfoFlags::kMTime_Default
32   , TIME_PREC_TO_ARC_FLAGS_MASK (NFileTimeType::kWindows)
33   | TIME_PREC_TO_ARC_FLAGS_MASK (NFileTimeType::kUnix)
34   | TIME_PREC_TO_ARC_FLAGS_MASK (NFileTimeType::kDOS)
35   | TIME_PREC_TO_ARC_FLAGS_TIME_DEFAULT (NFileTimeType::kWindows)
36   , IsArc_Zip)
37 
38 }}
39