Annotation of src/usr.bin/compress/compress.h, Revision 1.6
1.6 ! millert 1: /* $OpenBSD: compress.h,v 1.5 2003/07/11 02:31:18 millert Exp $ */
1.1 mickey 2:
3: /*
4: * Copyright (c) 1997 Michael Shalayeff
5: * All rights reserved.
6: *
7: * Redistribution and use in source and binary forms, with or without
8: * modification, are permitted provided that the following conditions
9: * are met:
10: * 1. Redistributions of source code must retain the above copyright
11: * notice, this list of conditions and the following disclaimer.
12: * 2. Redistributions in binary form must reproduce the above copyright
13: * notice, this list of conditions and the following disclaimer in the
14: * documentation and/or other materials provided with the distribution.
15: *
1.3 mickey 16: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17: * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
1.1 mickey 18: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26: * SUCH DAMAGE.
27: *
28: */
29:
1.6 ! millert 30: struct z_info {
! 31: u_int32_t mtime; /* timestamp */
! 32: u_int32_t crc; /* crc */
! 33: u_int32_t hlen; /* header length */
! 34: u_int64_t total_in; /* # bytes in */
! 35: u_int64_t total_out; /* # bytes out */
! 36: };
! 37:
1.3 mickey 38: /*
39: * making it any bigger does not affect perfomance very much.
40: * actually this value is just a little bit better than 8192.
41: */
1.1 mickey 42: #define Z_BUFSIZE 16384
43:
1.6 ! millert 44: /*
! 45: * exit codes for compress
! 46: */
! 47: #define SUCCESS 0
! 48: #define FAILURE 1
! 49: #define WARNING 2
! 50:
1.3 mickey 51: extern const char main_rcsid[], z_rcsid[], gz_rcsid[], pkzip_rcsid[],
52: pack_rcsid[], lzh_rcsid[];
53:
1.6 ! millert 54: extern void *z_open(int, const char *, char *, int, u_int32_t, int);
1.2 millert 55: extern FILE *zopen(const char *, const char *,int);
56: extern int zread(void *, char *, int);
57: extern int zwrite(void *, const char *, int);
1.6 ! millert 58: extern int z_close(void *, struct z_info *);
! 59:
1.3 mickey 60:
1.6 ! millert 61: extern void *gz_open(int, const char *, char *, int, u_int32_t, int);
1.2 millert 62: extern int gz_read(void *, char *, int);
63: extern int gz_write(void *, const char *, int);
1.6 ! millert 64: extern int gz_close(void *, struct z_info *);
1.2 millert 65: extern int gz_flush(void *, int);
1.3 mickey 66:
1.6 ! millert 67: extern void *lzh_open(int, const char *, char *, int, u_int32_t, int);
1.3 mickey 68: extern int lzh_read(void *, char *, int);
69: extern int lzh_write(void *, const char *, int);
1.6 ! millert 70: extern int lzh_close(void *, struct z_info *);
1.3 mickey 71: extern int lzh_flush(void *, int);