~ubuntu-branches/ubuntu/raring/clamav/raring-updates

« back to all changes in this revision

Viewing changes to win32/3rdparty/zlib/zutil.h

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2011-06-18 11:56:34 UTC
  • mfrom: (0.35.21 sid)
  • Revision ID: james.westby@ubuntu.com-20110618115634-u2lovivet0qx34d0
Tags: 0.97.1+dfsg-1ubuntu1
* Merge from debian unstable.  Remaining changes:
  - Drop build-dep on electric-fence (in Universe)
  - Add apparmor profiles for clamd and freshclam along with maintainer
    script changes

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* zutil.h -- internal interface and configuration of the compression library
2
 
 * Copyright (C) 1995-2010 Jean-loup Gailly.
3
 
 * For conditions of distribution and use, see copyright notice in zlib.h
4
 
 */
5
 
 
6
 
/* WARNING: this file should *not* be used by applications. It is
7
 
   part of the implementation of the compression library and is
8
 
   subject to change. Applications should only use zlib.h.
9
 
 */
10
 
 
11
 
/* @(#) $Id$ */
12
 
 
13
 
#ifndef ZUTIL_H
14
 
#define ZUTIL_H
15
 
 
16
 
#if ((__GNUC__-0) * 10 + __GNUC_MINOR__-0 >= 33) && !defined(NO_VIZ)
17
 
#  define ZLIB_INTERNAL __attribute__((visibility ("hidden")))
18
 
#else
19
 
#  define ZLIB_INTERNAL
20
 
#endif
21
 
 
22
 
#include "zlib.h"
23
 
 
24
 
#ifdef STDC
25
 
#  if !(defined(_WIN32_WCE) && defined(_MSC_VER))
26
 
#    include <stddef.h>
27
 
#  endif
28
 
#  include <string.h>
29
 
#  include <stdlib.h>
30
 
#endif
31
 
 
32
 
#ifndef local
33
 
#  define local static
34
 
#endif
35
 
/* compile with -Dlocal if your debugger can't find static symbols */
36
 
 
37
 
typedef unsigned char  uch;
38
 
typedef uch FAR uchf;
39
 
typedef unsigned short ush;
40
 
typedef ush FAR ushf;
41
 
typedef unsigned long  ulg;
42
 
 
43
 
extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */
44
 
/* (size given to avoid silly warnings with Visual C++) */
45
 
 
46
 
#define ERR_MSG(err) z_errmsg[Z_NEED_DICT-(err)]
47
 
 
48
 
#define ERR_RETURN(strm,err) \
49
 
  return (strm->msg = (char*)ERR_MSG(err), (err))
50
 
/* To be used only when the state is known to be valid */
51
 
 
52
 
        /* common constants */
53
 
 
54
 
#ifndef DEF_WBITS
55
 
#  define DEF_WBITS MAX_WBITS
56
 
#endif
57
 
/* default windowBits for decompression. MAX_WBITS is for compression only */
58
 
 
59
 
#if MAX_MEM_LEVEL >= 8
60
 
#  define DEF_MEM_LEVEL 8
61
 
#else
62
 
#  define DEF_MEM_LEVEL  MAX_MEM_LEVEL
63
 
#endif
64
 
/* default memLevel */
65
 
 
66
 
#define STORED_BLOCK 0
67
 
#define STATIC_TREES 1
68
 
#define DYN_TREES    2
69
 
/* The three kinds of block type */
70
 
 
71
 
#define MIN_MATCH  3
72
 
#define MAX_MATCH  258
73
 
/* The minimum and maximum match lengths */
74
 
 
75
 
#define PRESET_DICT 0x20 /* preset dictionary flag in zlib header */
76
 
 
77
 
        /* target dependencies */
78
 
 
79
 
#if defined(MSDOS) || (defined(WINDOWS) && !defined(WIN32))
80
 
#  define OS_CODE  0x00
81
 
#  if defined(__TURBOC__) || defined(__BORLANDC__)
82
 
#    if (__STDC__ == 1) && (defined(__LARGE__) || defined(__COMPACT__))
83
 
       /* Allow compilation with ANSI keywords only enabled */
84
 
       void _Cdecl farfree( void *block );
85
 
       void *_Cdecl farmalloc( unsigned long nbytes );
86
 
#    else
87
 
#      include <alloc.h>
88
 
#    endif
89
 
#  else /* MSC or DJGPP */
90
 
#    include <malloc.h>
91
 
#  endif
92
 
#endif
93
 
 
94
 
#ifdef AMIGA
95
 
#  define OS_CODE  0x01
96
 
#endif
97
 
 
98
 
#if defined(VAXC) || defined(VMS)
99
 
#  define OS_CODE  0x02
100
 
#  define F_OPEN(name, mode) \
101
 
     fopen((name), (mode), "mbc=60", "ctx=stm", "rfm=fix", "mrs=512")
102
 
#endif
103
 
 
104
 
#if defined(ATARI) || defined(atarist)
105
 
#  define OS_CODE  0x05
106
 
#endif
107
 
 
108
 
#ifdef OS2
109
 
#  define OS_CODE  0x06
110
 
#  ifdef M_I86
111
 
#    include <malloc.h>
112
 
#  endif
113
 
#endif
114
 
 
115
 
#if defined(MACOS) || defined(TARGET_OS_MAC)
116
 
#  define OS_CODE  0x07
117
 
#  if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os
118
 
#    include <unix.h> /* for fdopen */
119
 
#  else
120
 
#    ifndef fdopen
121
 
#      define fdopen(fd,mode) NULL /* No fdopen() */
122
 
#    endif
123
 
#  endif
124
 
#endif
125
 
 
126
 
#ifdef TOPS20
127
 
#  define OS_CODE  0x0a
128
 
#endif
129
 
 
130
 
#ifdef WIN32
131
 
#  ifndef __CYGWIN__  /* Cygwin is Unix, not Win32 */
132
 
#    define OS_CODE  0x0b
133
 
#  endif
134
 
#endif
135
 
 
136
 
#ifdef __50SERIES /* Prime/PRIMOS */
137
 
#  define OS_CODE  0x0f
138
 
#endif
139
 
 
140
 
#if defined(_BEOS_) || defined(RISCOS)
141
 
#  define fdopen(fd,mode) NULL /* No fdopen() */
142
 
#endif
143
 
 
144
 
#if (defined(_MSC_VER) && (_MSC_VER > 600)) && !defined __INTERIX
145
 
#  if defined(_WIN32_WCE)
146
 
#    define fdopen(fd,mode) NULL /* No fdopen() */
147
 
#    ifndef _PTRDIFF_T_DEFINED
148
 
       typedef int ptrdiff_t;
149
 
#      define _PTRDIFF_T_DEFINED
150
 
#    endif
151
 
#  else
152
 
#    define fdopen(fd,type)  _fdopen(fd,type)
153
 
#  endif
154
 
#endif
155
 
 
156
 
#if defined(__BORLANDC__)
157
 
  #pragma warn -8004
158
 
  #pragma warn -8008
159
 
  #pragma warn -8066
160
 
#endif
161
 
 
162
 
/* provide prototypes for these when building zlib without LFS */
163
 
#if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0
164
 
    ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t));
165
 
    ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t));
166
 
#endif
167
 
 
168
 
        /* common defaults */
169
 
 
170
 
#ifndef OS_CODE
171
 
#  define OS_CODE  0x03  /* assume Unix */
172
 
#endif
173
 
 
174
 
#ifndef F_OPEN
175
 
#  define F_OPEN(name, mode) fopen((name), (mode))
176
 
#endif
177
 
 
178
 
         /* functions */
179
 
 
180
 
#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550)
181
 
#  ifndef HAVE_VSNPRINTF
182
 
#    define HAVE_VSNPRINTF
183
 
#  endif
184
 
#endif
185
 
#if defined(__CYGWIN__)
186
 
#  ifndef HAVE_VSNPRINTF
187
 
#    define HAVE_VSNPRINTF
188
 
#  endif
189
 
#endif
190
 
#ifndef HAVE_VSNPRINTF
191
 
#  ifdef MSDOS
192
 
     /* vsnprintf may exist on some MS-DOS compilers (DJGPP?),
193
 
        but for now we just assume it doesn't. */
194
 
#    define NO_vsnprintf
195
 
#  endif
196
 
#  ifdef __TURBOC__
197
 
#    define NO_vsnprintf
198
 
#  endif
199
 
#  ifdef WIN32
200
 
     /* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */
201
 
#    if !defined(vsnprintf) && !defined(NO_vsnprintf)
202
 
#      if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 )
203
 
#         define vsnprintf _vsnprintf
204
 
#      endif
205
 
#    endif
206
 
#  endif
207
 
#  ifdef __SASC
208
 
#    define NO_vsnprintf
209
 
#  endif
210
 
#endif
211
 
#ifdef VMS
212
 
#  define NO_vsnprintf
213
 
#endif
214
 
 
215
 
#if defined(pyr)
216
 
#  define NO_MEMCPY
217
 
#endif
218
 
#if defined(SMALL_MEDIUM) && !defined(_MSC_VER) && !defined(__SC__)
219
 
 /* Use our own functions for small and medium model with MSC <= 5.0.
220
 
  * You may have to use the same strategy for Borland C (untested).
221
 
  * The __SC__ check is for Symantec.
222
 
  */
223
 
#  define NO_MEMCPY
224
 
#endif
225
 
#if defined(STDC) && !defined(HAVE_MEMCPY) && !defined(NO_MEMCPY)
226
 
#  define HAVE_MEMCPY
227
 
#endif
228
 
#ifdef HAVE_MEMCPY
229
 
#  ifdef SMALL_MEDIUM /* MSDOS small or medium model */
230
 
#    define zmemcpy _fmemcpy
231
 
#    define zmemcmp _fmemcmp
232
 
#    define zmemzero(dest, len) _fmemset(dest, 0, len)
233
 
#  else
234
 
#    define zmemcpy memcpy
235
 
#    define zmemcmp memcmp
236
 
#    define zmemzero(dest, len) memset(dest, 0, len)
237
 
#  endif
238
 
#else
239
 
   void ZLIB_INTERNAL zmemcpy OF((Bytef* dest, const Bytef* source, uInt len));
240
 
   int ZLIB_INTERNAL zmemcmp OF((const Bytef* s1, const Bytef* s2, uInt len));
241
 
   void ZLIB_INTERNAL zmemzero OF((Bytef* dest, uInt len));
242
 
#endif
243
 
 
244
 
/* Diagnostic functions */
245
 
#ifdef DEBUG
246
 
#  include <stdio.h>
247
 
   extern int ZLIB_INTERNAL z_verbose;
248
 
   extern void ZLIB_INTERNAL z_error OF((char *m));
249
 
#  define Assert(cond,msg) {if(!(cond)) z_error(msg);}
250
 
#  define Trace(x) {if (z_verbose>=0) fprintf x ;}
251
 
#  define Tracev(x) {if (z_verbose>0) fprintf x ;}
252
 
#  define Tracevv(x) {if (z_verbose>1) fprintf x ;}
253
 
#  define Tracec(c,x) {if (z_verbose>0 && (c)) fprintf x ;}
254
 
#  define Tracecv(c,x) {if (z_verbose>1 && (c)) fprintf x ;}
255
 
#else
256
 
#  define Assert(cond,msg)
257
 
#  define Trace(x)
258
 
#  define Tracev(x)
259
 
#  define Tracevv(x)
260
 
#  define Tracec(c,x)
261
 
#  define Tracecv(c,x)
262
 
#endif
263
 
 
264
 
 
265
 
voidpf ZLIB_INTERNAL zcalloc OF((voidpf opaque, unsigned items,
266
 
                        unsigned size));
267
 
void ZLIB_INTERNAL zcfree  OF((voidpf opaque, voidpf ptr));
268
 
 
269
 
#define ZALLOC(strm, items, size) \
270
 
           (*((strm)->zalloc))((strm)->opaque, (items), (size))
271
 
#define ZFREE(strm, addr)  (*((strm)->zfree))((strm)->opaque, (voidpf)(addr))
272
 
#define TRY_FREE(s, p) {if (p) ZFREE(s, p);}
273
 
 
274
 
#endif /* ZUTIL_H */