13 #ifndef MSPACK_MSZIP_H
14 #define MSPACK_MSZIP_H 1
22 #define MSZIP_FRAME_SIZE (32768)
23 #define MSZIP_LITERAL_MAXSYMBOLS (288)
24 #define MSZIP_LITERAL_TABLEBITS (9)
25 #define MSZIP_DISTANCE_MAXSYMBOLS (32)
26 #define MSZIP_DISTANCE_TABLEBITS (6)
31 #if (1 << MSZIP_LITERAL_TABLEBITS) < (MSZIP_LITERAL_MAXSYMBOLS * 2)
32 # define MSZIP_LITERAL_TABLESIZE (MSZIP_LITERAL_MAXSYMBOLS * 4)
34 # define MSZIP_LITERAL_TABLESIZE ((1 << MSZIP_LITERAL_TABLEBITS) + \
35 (MSZIP_LITERAL_MAXSYMBOLS * 2))
38 #if (1 << MSZIP_DISTANCE_TABLEBITS) < (MSZIP_DISTANCE_MAXSYMBOLS * 2)
39 # define MSZIP_DISTANCE_TABLESIZE (MSZIP_DISTANCE_MAXSYMBOLS * 4)
41 # define MSZIP_DISTANCE_TABLESIZE ((1 << MSZIP_DISTANCE_TABLEBITS) + \
42 (MSZIP_DISTANCE_MAXSYMBOLS * 2))
88 int input_buffer_size,
struct mspack_system * sys
unsigned char LITERAL_len[MSZIP_LITERAL_MAXSYMBOLS]
struct mspack_file * input
int(* flush_window)(struct mszipd_stream *, unsigned int)
unsigned short DISTANCE_table[MSZIP_DISTANCE_TABLESIZE]
unsigned char DISTANCE_len[MSZIP_DISTANCE_MAXSYMBOLS]
struct mspack_file * output
unsigned short LITERAL_table[MSZIP_LITERAL_TABLESIZE]
static bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)