Blob


1 #ifndef _FLATE_H_
2 #define _FLATE_H_ 1
3 #if defined(__cplusplus)
4 extern "C" {
5 #endif
6 /*
7 #pragma lib "libflate.a"
8 #pragma src "/sys/src/libflate"
9 */
11 /*
12 * errors from deflate, deflateinit, deflateblock,
13 * inflate, inflateinit, inflateblock.
14 * convertable to a string by flateerr
15 */
16 enum
17 {
18 FlateOk = 0,
19 FlateNoMem = -1,
20 FlateInputFail = -2,
21 FlateOutputFail = -3,
22 FlateCorrupted = -4,
23 FlateInternal = -5,
24 };
26 int deflateinit(void);
27 int deflate(void *wr, int (*w)(void*, void*, int), void *rr, int (*r)(void*, void*, int), int level, int debug);
29 int inflateinit(void);
30 int inflate(void *wr, int (*w)(void*, void*, int), void *getr, int (*get)(void*));
32 int inflateblock(uchar *dst, int dsize, uchar *src, int ssize);
33 int deflateblock(uchar *dst, int dsize, uchar *src, int ssize, int level, int debug);
35 int deflatezlib(void *wr, int (*w)(void*, void*, int), void *rr, int (*r)(void*, void*, int), int level, int debug);
36 int inflatezlib(void *wr, int (*w)(void*, void*, int), void *getr, int (*get)(void*));
38 int inflatezlibblock(uchar *dst, int dsize, uchar *src, int ssize);
39 int deflatezlibblock(uchar *dst, int dsize, uchar *src, int ssize, int level, int debug);
41 char *flateerr(int err);
43 ulong *mkcrctab(ulong);
44 ulong blockcrc(ulong *tab, ulong crc, void *buf, int n);
46 ulong adler32(ulong adler, void *buf, int n);
47 #if defined(__cplusplus)
48 }
49 #endif
50 #endif