CppUtils/Utils/zlib/inflate.h
2025-06-05 10:06:43 +08:00

92 lines
1.9 KiB
C

#ifndef NO_GZIP
# define GUNZIP
#endif
typedef enum {
HEAD = 16180,
FLAGS,
TIME,
OS,
EXLEN,
EXTRA,
NAME,
COMMENT,
HCRC,
DICTID,
DICT,
TYPE,
TYPEDO,
STORED,
COPY_,
COPY,
TABLE,
LENLENS,
CODELENS,
LEN_,
LEN,
LENEXT,
DIST,
DISTEXT,
MATCH,
LIT,
CHECK,
LENGTH,
DONE,
BAD,
MEM,
SYNC
} inflate_mode;
struct inflate_state {
z_streamp strm;
inflate_mode mode;
int last;
int wrap;
int havedict;
int flags;
unsigned dmax;
unsigned long check;
unsigned long total;
gz_headerp head;
unsigned wbits;
unsigned wsize;
unsigned whave;
unsigned wnext;
unsigned char FAR *window;
unsigned long hold;
unsigned bits;
unsigned length;
unsigned offset;
unsigned extra;
code const FAR *lencode;
code const FAR *distcode;
unsigned lenbits;
unsigned distbits;
unsigned ncode;
unsigned nlen;
unsigned ndist;
unsigned have;
code FAR *next;
unsigned short lens[320];
unsigned short work[288];
code codes[ENOUGH];
int sane;
int back;
unsigned was;
};