The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/sys/inflate.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  * ----------------------------------------------------------------------------
    3  * "THE BEER-WARE LICENSE" (Revision 42):
    4  * <phk@FreeBSD.org> wrote this file.  As long as you retain this notice you
    5  * can do whatever you want with this stuff. If we meet some day, and you think
    6  * this stuff is worth it, you can buy me a beer in return.   Poul-Henning Kamp
    7  * ----------------------------------------------------------------------------
    8  *
    9  * $FreeBSD: src/sys/sys/inflate.h,v 1.13.8.1 2005/01/31 23:26:56 imp Exp $
   10  *
   11  */
   12 #ifndef _SYS_INFLATE_H_
   13 #define _SYS_INFLATE_H_
   14 
   15 #if defined(_KERNEL) || defined(KZIP)
   16 
   17 #define GZ_EOF -1
   18 
   19 #define GZ_WSIZE 0x8000
   20 
   21 /*
   22  * Global variables used by inflate and friends.
   23  * This structure is used in order to make inflate() reentrant.
   24  */
   25 struct inflate {
   26         /* Public part */
   27 
   28         /* This pointer is passed along to the two functions below */
   29         void           *gz_private;
   30 
   31         /* Fetch next character to be uncompressed */
   32         int             (*gz_input)(void *);
   33 
   34         /* Dispose of uncompressed characters */
   35         int             (*gz_output)(void *, u_char *, u_long);
   36 
   37         /* Private part */
   38         u_long          gz_bb;  /* bit buffer */
   39         unsigned        gz_bk;  /* bits in bit buffer */
   40         unsigned        gz_hufts;       /* track memory usage */
   41         struct huft    *gz_fixed_tl;    /* must init to NULL !! */
   42         struct huft    *gz_fixed_td;
   43         int             gz_fixed_bl;
   44         int             gz_fixed_bd;
   45         u_char         *gz_slide;
   46         unsigned        gz_wp;
   47 };
   48 
   49 int inflate(struct inflate *);
   50 
   51 #endif  /* _KERNEL || KZIP */
   52 
   53 #endif  /* ! _SYS_INFLATE_H_ */

Cache object: 087c6a629f21492e6f37ebbc6ae6f3ee


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.