Lines Matching +full:os +full:- +full:code +full:- +full:offset
4 /* inflate.h -- internal inflate state definition
5 * Copyright (C) 1995-2004 Mark Adler
21 OS, /* i: waiting for extra flags and operating system (gzip) */ enumerator
29 TYPE, /* i: waiting for type bits, including last-flag bit */
34 LENLENS, /* i: waiting for code length code lengths */
35 CODELENS, /* i: waiting for length/lit and distance code lengths */
36 LEN, /* i: waiting for length/lit code */
38 DIST, /* i: waiting for distance code */
42 CHECK, /* i: waiting for 32-bit check value */
43 LENGTH, /* i: waiting for 32-bit length (gzip) */
44 DONE, /* finished check, done -- remain here until reset */
45 BAD, /* got a data error -- remain here until reset */
46 MEM, /* got an inflate() memory error -- remain here until reset */
51 State transitions between above modes -
53 (most modes can go to the BAD or MEM mode -- not shown for clarity)
56 HEAD -> (gzip) or (zlib)
57 (gzip) -> FLAGS -> TIME -> OS -> EXLEN -> EXTRA -> NAME
58 NAME -> COMMENT -> HCRC -> TYPE
59 (zlib) -> DICTID or TYPE
60 DICTID -> DICT -> TYPE
62 TYPE -> STORED or TABLE or LEN or CHECK
63 STORED -> COPY -> TYPE
64 TABLE -> LENLENS -> CODELENS -> LEN
66 LEN -> LENEXT or LIT or TYPE
67 LENEXT -> DIST -> DISTEXT -> MATCH -> LEN
68 LIT -> LEN
70 CHECK -> LENGTH -> DONE
95 unsigned offset; /* distance back to copy string from */ member
96 /* for table and code decoding */
98 /* fixed and dynamic code tables */
99 code const *lencode; /* starting table for length/literal codes */
100 code const *distcode; /* starting table for distance codes */
104 unsigned ncode; /* number of code length code lengths */
105 unsigned nlen; /* number of length code lengths */
106 unsigned ndist; /* number of distance code lengths */
107 unsigned have; /* number of code lengths in lens[] */
108 code *next; /* next available space in codes[] */
109 unsigned short lens[320]; /* temporary storage for code lengths */
110 unsigned short work[288]; /* work area for code table building */
111 code codes[ENOUGH]; /* space for code tables */
114 /* Reverse the bytes in a 32-bit value */