Blame


1 ff3adf60 2004-04-14 devnull typedef struct ZipHead ZipHead;
2 ff3adf60 2004-04-14 devnull
3 ff3adf60 2004-04-14 devnull enum
4 ff3adf60 2004-04-14 devnull {
5 ff3adf60 2004-04-14 devnull /*
6 ff3adf60 2004-04-14 devnull * magic numbers
7 ff3adf60 2004-04-14 devnull */
8 ff3adf60 2004-04-14 devnull ZHeader = 0x04034b50,
9 ff3adf60 2004-04-14 devnull ZCHeader = 0x02014b50,
10 ff3adf60 2004-04-14 devnull ZECHeader = 0x06054b50,
11 ff3adf60 2004-04-14 devnull
12 ff3adf60 2004-04-14 devnull /*
13 ff3adf60 2004-04-14 devnull * "general purpose flag" bits
14 ff3adf60 2004-04-14 devnull */
15 ff3adf60 2004-04-14 devnull ZEncrypted = 1 << 0,
16 ff3adf60 2004-04-14 devnull ZTrailInfo = 1 << 3, /* uncsize, csize, and crc are in trailer */
17 ff3adf60 2004-04-14 devnull ZCompPatch = 1 << 5, /* compression patched data */
18 ff3adf60 2004-04-14 devnull
19 a0f1e21f 2004-04-20 devnull /* ZCrcPoly = 0xedb88320, */
20 a0f1e21f 2004-04-20 devnull #define ZCrcPoly 0xedb88320
21 ff3adf60 2004-04-14 devnull
22 ff3adf60 2004-04-14 devnull /*
23 ff3adf60 2004-04-14 devnull * compression method
24 ff3adf60 2004-04-14 devnull */
25 ff3adf60 2004-04-14 devnull ZDeflate = 8,
26 ff3adf60 2004-04-14 devnull
27 ff3adf60 2004-04-14 devnull /*
28 ff3adf60 2004-04-14 devnull * internal file attributes
29 ff3adf60 2004-04-14 devnull */
30 ff3adf60 2004-04-14 devnull ZIsText = 1 << 0,
31 ff3adf60 2004-04-14 devnull
32 ff3adf60 2004-04-14 devnull /*
33 ff3adf60 2004-04-14 devnull * file attribute interpretation, from high byte of version
34 ff3adf60 2004-04-14 devnull */
35 ff3adf60 2004-04-14 devnull ZDos = 0,
36 ff3adf60 2004-04-14 devnull ZAmiga = 1,
37 ff3adf60 2004-04-14 devnull ZVMS = 2,
38 ff3adf60 2004-04-14 devnull ZUnix = 3,
39 ff3adf60 2004-04-14 devnull ZVMCMS = 4,
40 ff3adf60 2004-04-14 devnull ZAtariST = 5,
41 ff3adf60 2004-04-14 devnull ZOS2HPFS = 6,
42 ff3adf60 2004-04-14 devnull ZMac = 7,
43 ff3adf60 2004-04-14 devnull ZZsys = 8,
44 ff3adf60 2004-04-14 devnull ZCPM = 9,
45 ff3adf60 2004-04-14 devnull ZNtfs = 10,
46 ff3adf60 2004-04-14 devnull
47 ff3adf60 2004-04-14 devnull /*
48 ff3adf60 2004-04-14 devnull * external attribute flags for ZDos
49 ff3adf60 2004-04-14 devnull */
50 ff3adf60 2004-04-14 devnull ZDROnly = 0x01,
51 ff3adf60 2004-04-14 devnull ZDHidden = 0x02,
52 ff3adf60 2004-04-14 devnull ZDSystem = 0x04,
53 ff3adf60 2004-04-14 devnull ZDVLable = 0x08,
54 ff3adf60 2004-04-14 devnull ZDDir = 0x10,
55 ff3adf60 2004-04-14 devnull ZDArch = 0x20,
56 ff3adf60 2004-04-14 devnull
57 ff3adf60 2004-04-14 devnull ZHeadSize = 4 + 2 + 2 + 2 + 2 + 2 + 4 + 4 + 4 + 2 + 2,
58 ff3adf60 2004-04-14 devnull ZHeadCrc = 4 + 2 + 2 + 2 + 2 + 2,
59 ff3adf60 2004-04-14 devnull ZTrailSize = 4 + 4 + 4,
60 ff3adf60 2004-04-14 devnull ZCHeadSize = 4 + 2 + 2 + 2 + 2 + 2 + 2 + 4 + 4 + 4 + 2 + 2 + 2 + 2 + 2 + 4 + 4,
61 cbeb0b26 2006-04-01 devnull ZECHeadSize = 4 + 2 + 2 + 2 + 2 + 4 + 4 + 2
62 ff3adf60 2004-04-14 devnull };
63 ff3adf60 2004-04-14 devnull
64 ff3adf60 2004-04-14 devnull /*
65 ff3adf60 2004-04-14 devnull * interesting info from a zip header
66 ff3adf60 2004-04-14 devnull */
67 ff3adf60 2004-04-14 devnull struct ZipHead
68 ff3adf60 2004-04-14 devnull {
69 ff3adf60 2004-04-14 devnull int madeos; /* version made by */
70 ff3adf60 2004-04-14 devnull int madevers;
71 ff3adf60 2004-04-14 devnull int extos; /* version needed to extract */
72 ff3adf60 2004-04-14 devnull int extvers;
73 ff3adf60 2004-04-14 devnull int flags; /* general purpose bit flag */
74 ff3adf60 2004-04-14 devnull int meth;
75 ff3adf60 2004-04-14 devnull int modtime;
76 ff3adf60 2004-04-14 devnull int moddate;
77 ff3adf60 2004-04-14 devnull ulong crc;
78 ff3adf60 2004-04-14 devnull ulong csize;
79 ff3adf60 2004-04-14 devnull ulong uncsize;
80 ff3adf60 2004-04-14 devnull int iattr;
81 ff3adf60 2004-04-14 devnull ulong eattr;
82 ff3adf60 2004-04-14 devnull ulong off;
83 ff3adf60 2004-04-14 devnull char *file;
84 ff3adf60 2004-04-14 devnull };