xref: /inferno-os/include/flate.h (revision 37da2899f40661e3e9631e497da8dc59b971cbd0)
1*37da2899SCharles.Forsyth /*
2*37da2899SCharles.Forsyth  * errors from deflate, deflateinit, deflateblock,
3*37da2899SCharles.Forsyth  * inflate, inflateinit, inflateblock.
4*37da2899SCharles.Forsyth  * convertable to a string by flateerr
5*37da2899SCharles.Forsyth  */
6*37da2899SCharles.Forsyth enum
7*37da2899SCharles.Forsyth {
8*37da2899SCharles.Forsyth 	FlateOk			= 0,
9*37da2899SCharles.Forsyth 	FlateNoMem		= -1,
10*37da2899SCharles.Forsyth 	FlateInputFail		= -2,
11*37da2899SCharles.Forsyth 	FlateOutputFail		= -3,
12*37da2899SCharles.Forsyth 	FlateCorrupted		= -4,
13*37da2899SCharles.Forsyth 	FlateInternal		= -5,
14*37da2899SCharles.Forsyth };
15*37da2899SCharles.Forsyth 
16*37da2899SCharles.Forsyth int	deflateinit(void);
17*37da2899SCharles.Forsyth int	deflate(void *wr, int (*w)(void*, void*, int), void *rr, int (*r)(void*, void*, int), int level, int debug);
18*37da2899SCharles.Forsyth 
19*37da2899SCharles.Forsyth int	inflateinit(void);
20*37da2899SCharles.Forsyth int	inflate(void *wr, int (*w)(void*, void*, int), void *getr, int (*get)(void*));
21*37da2899SCharles.Forsyth 
22*37da2899SCharles.Forsyth int	inflateblock(uchar *dst, int dsize, uchar *src, int ssize);
23*37da2899SCharles.Forsyth int	deflateblock(uchar *dst, int dsize, uchar *src, int ssize, int level, int debug);
24*37da2899SCharles.Forsyth 
25*37da2899SCharles.Forsyth int	deflatezlib(void *wr, int (*w)(void*, void*, int), void *rr, int (*r)(void*, void*, int), int level, int debug);
26*37da2899SCharles.Forsyth int	inflatezlib(void *wr, int (*w)(void*, void*, int), void *getr, int (*get)(void*));
27*37da2899SCharles.Forsyth 
28*37da2899SCharles.Forsyth int	inflatezlibblock(uchar *dst, int dsize, uchar *src, int ssize);
29*37da2899SCharles.Forsyth int	deflatezlibblock(uchar *dst, int dsize, uchar *src, int ssize, int level, int debug);
30*37da2899SCharles.Forsyth 
31*37da2899SCharles.Forsyth char	*flateerr(int err);
32*37da2899SCharles.Forsyth 
33*37da2899SCharles.Forsyth ulong	*mkcrctab(ulong);
34*37da2899SCharles.Forsyth ulong	blockcrc(ulong *tab, ulong crc, void *buf, int n);
35*37da2899SCharles.Forsyth 
36*37da2899SCharles.Forsyth ulong	adler32(ulong adler, void *buf, int n);
37