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