activemq-cpp-3.9.0
Main Page
Namespaces
Data Structures
Files
File List
Globals
gzguts.h
Go to the documentation of this file.
1
/* gzguts.h -- zlib internal header definitions for gz* operations
2
* Copyright (C) 2004, 2005, 2010 Mark Adler
3
* For conditions of distribution and use, see copyright notice in zlib.h
4
*/
5
6
#ifdef _LARGEFILE64_SOURCE
7
# ifndef _LARGEFILE_SOURCE
8
# define _LARGEFILE_SOURCE 1
9
# endif
10
# ifdef _FILE_OFFSET_BITS
11
# undef _FILE_OFFSET_BITS
12
# endif
13
#endif
14
15
#if ((__GNUC__-0) * 10 + __GNUC_MINOR__-0 >= 33) && !defined(NO_VIZ)
16
# define ZLIB_INTERNAL __attribute__((visibility ("hidden")))
17
#else
18
# define ZLIB_INTERNAL
19
#endif
20
21
#include <stdio.h>
22
#include "
zlib.h
"
23
#ifdef STDC
24
# include <string.h>
25
# include <stdlib.h>
26
# include <limits.h>
27
#endif
28
#include <fcntl.h>
29
30
#ifdef NO_DEFLATE
/* for compatibility with old definition */
31
# define NO_GZCOMPRESS
32
#endif
33
34
#ifdef _MSC_VER
35
# include <io.h>
36
# define vsnprintf _vsnprintf
37
#endif
38
39
#ifndef local
40
# define local static
41
#endif
42
/* compile with -Dlocal if your debugger can't find static symbols */
43
44
/* gz* functions always use library allocation functions */
45
#ifndef STDC
46
extern
voidp
malloc
OF
((
uInt
size));
47
extern
void
free
OF
((
voidpf
ptr));
48
#endif
49
50
/* get errno and strerror definition */
51
#if defined UNDER_CE
52
# include <windows.h>
53
# define zstrerror() gz_strwinerror((DWORD)GetLastError())
54
#else
55
# ifdef STDC
56
# include <errno.h>
57
# define zstrerror() strerror(errno)
58
# else
59
# define zstrerror() "stdio error (consult errno)"
60
# endif
61
#endif
62
63
/* provide prototypes for these when building zlib without LFS */
64
#if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0
65
ZEXTERN
gzFile
ZEXPORT
gzopen64
OF
((
const
char
*,
const
char
*));
66
ZEXTERN
z_off64_t
ZEXPORT
gzseek64
OF
((
gzFile
,
z_off64_t
,
int
));
67
ZEXTERN
z_off64_t
ZEXPORT
gztell64
OF
((
gzFile
));
68
ZEXTERN
z_off64_t
ZEXPORT
gzoffset64
OF
((
gzFile
));
69
#endif
70
71
/* default i/o buffer size -- double this for output when reading */
72
#define GZBUFSIZE 8192
73
74
/* gzip modes, also provide a little integrity check on the passed structure */
75
#define GZ_NONE 0
76
#define GZ_READ 7247
77
#define GZ_WRITE 31153
78
#define GZ_APPEND 1
/* mode set to GZ_WRITE after the file is opened */
79
80
/* values for gz_state how */
81
#define LOOK 0
/* look for a gzip header */
82
#define COPY 1
/* copy input directly */
83
#define GZIP 2
/* decompress a gzip stream */
84
85
/* internal gzip file state data structure */
86
typedef
struct
{
87
/* used for both reading and writing */
88
int
mode
;
/* see gzip modes above */
89
int
fd
;
/* file descriptor */
90
char
*
path
;
/* path or fd for error messages */
91
z_off64_t
pos
;
/* current position in uncompressed data */
92
unsigned
size
;
/* buffer size, zero if not allocated yet */
93
unsigned
want
;
/* requested buffer size, default is GZBUFSIZE */
94
unsigned
char
*
in
;
/* input buffer */
95
unsigned
char
*
out
;
/* output buffer (double-sized when reading) */
96
unsigned
char
*
next
;
/* next output data to deliver or write */
97
/* just for reading */
98
unsigned
have
;
/* amount of output data unused at next */
99
int
eof
;
/* true if end of input file reached */
100
z_off64_t
start
;
/* where the gzip data started, for rewinding */
101
z_off64_t
raw
;
/* where the raw data started, for seeking */
102
int
how
;
/* 0: get header, 1: copy, 2: decompress */
103
int
direct
;
/* true if last read direct, false if gzip */
104
/* just for writing */
105
int
level
;
/* compression level */
106
int
strategy
;
/* compression strategy */
107
/* seek request */
108
z_off64_t
skip
;
/* amount to skip (already rewound if backwards) */
109
int
seek
;
/* true if seek request pending */
110
/* error information */
111
int
err
;
/* error code */
112
char
*
msg
;
/* error message */
113
/* zlib inflate or deflate stream */
114
z_stream
strm
;
/* stream structure in-place (not a pointer) */
115
}
gz_state
;
116
typedef
gz_state
FAR
*
gz_statep
;
117
118
/* shared functions */
119
void
ZLIB_INTERNAL
gz_error
OF
((gz_statep,
int
,
const
char
*));
120
#if defined UNDER_CE
121
char
ZLIB_INTERNAL
*gz_strwinerror
OF
((DWORD error));
122
#endif
123
124
/* GT_OFF(x), where x is an unsigned value, is true if x > maximum z_off64_t
125
value -- needed when comparing unsigned to z_off64_t, which is signed
126
(possible z_off64_t types off_t, off64_t, and long are all signed) */
127
#ifdef INT_MAX
128
# define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > INT_MAX)
129
#else
130
unsigned
ZLIB_INTERNAL
gz_intmax
OF
((
void
));
131
# define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > gz_intmax())
132
#endif
gz_state
Definition:
gzguts.h:86
voidpf
Byte FAR * voidpf
Definition:
zconf.h:357
gz_state::err
int err
Definition:
gzguts.h:111
gz_state::path
char * path
Definition:
gzguts.h:90
z_off64_t
#define z_off64_t
Definition:
zconf.h:398
gz_state::pos
z_off64_t pos
Definition:
gzguts.h:91
gz_state::mode
int mode
Definition:
gzguts.h:88
gz_state::strm
z_stream strm
Definition:
gzguts.h:114
gz_state::fd
int fd
Definition:
gzguts.h:89
gz_state::eof
int eof
Definition:
gzguts.h:99
gzFile
voidp gzFile
Definition:
zlib.h:1165
gz_state::skip
z_off64_t skip
Definition:
gzguts.h:108
gz_state::have
unsigned have
Definition:
gzguts.h:98
zlib.h
gz_state::in
unsigned char * in
Definition:
gzguts.h:94
OF
voidp malloc OF((uInt size))
gz_state::size
unsigned size
Definition:
gzguts.h:92
gz_state::next
unsigned char * next
Definition:
gzguts.h:96
gz_state::msg
char * msg
Definition:
gzguts.h:112
gz_state::want
unsigned want
Definition:
gzguts.h:93
voidp
Byte * voidp
Definition:
zconf.h:358
gz_state::seek
int seek
Definition:
gzguts.h:109
gz_state::start
z_off64_t start
Definition:
gzguts.h:100
ZEXTERN
#define ZEXTERN
Definition:
zconf.h:321
gz_state::strategy
int strategy
Definition:
gzguts.h:106
gz_state::level
int level
Definition:
gzguts.h:105
ZLIB_INTERNAL
#define ZLIB_INTERNAL
Definition:
gzguts.h:18
gz_statep
gz_state FAR * gz_statep
Definition:
gzguts.h:116
gz_state::raw
z_off64_t raw
Definition:
gzguts.h:101
FAR
#define FAR
Definition:
zconf.h:331
gz_state::direct
int direct
Definition:
gzguts.h:103
gz_state::out
unsigned char * out
Definition:
gzguts.h:95
gz_state::how
int how
Definition:
gzguts.h:102
ZEXPORT
#define ZEXPORT
Definition:
zconf.h:324
z_stream_s
Definition:
zlib.h:85
uInt
unsigned int uInt
Definition:
zconf.h:337
src
main
decaf
internal
util
zip
gzguts.h
Generated on Sun Aug 16 2015 17:10:33 for activemq-cpp-3.9.0 by
1.8.7