gzguts.h (muscle7.61) | : | gzguts.h (muscle7.62) | ||
---|---|---|---|---|
/* gzguts.h -- zlib internal header definitions for gz* operations | /* gzguts.h -- zlib internal header definitions for gz* operations | |||
* Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013 Mark Adler | * Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013, 2016 Mark Adler | |||
* For conditions of distribution and use, see copyright notice in zlib.h | * For conditions of distribution and use, see copyright notice in zlib.h | |||
*/ | */ | |||
#ifdef _LARGEFILE64_SOURCE | #ifdef _LARGEFILE64_SOURCE | |||
# ifndef _LARGEFILE_SOURCE | # ifndef _LARGEFILE_SOURCE | |||
# define _LARGEFILE_SOURCE 1 | # define _LARGEFILE_SOURCE 1 | |||
# endif | # endif | |||
# ifdef _FILE_OFFSET_BITS | # ifdef _FILE_OFFSET_BITS | |||
# undef _FILE_OFFSET_BITS | # undef _FILE_OFFSET_BITS | |||
# endif | # endif | |||
skipping to change at line 28 | skipping to change at line 28 | |||
# define ZLIB_INTERNAL | # define ZLIB_INTERNAL | |||
#endif | #endif | |||
#include <stdio.h> | #include <stdio.h> | |||
#include "zlib.h" | #include "zlib.h" | |||
#ifdef STDC | #ifdef STDC | |||
# include <string.h> | # include <string.h> | |||
# include <stdlib.h> | # include <stdlib.h> | |||
# include <limits.h> | # include <limits.h> | |||
#endif | #endif | |||
#ifndef _POSIX_SOURCE | ||||
# define _POSIX_SOURCE | ||||
#endif | ||||
#include <fcntl.h> | #include <fcntl.h> | |||
#ifdef _WIN32 | #ifdef _WIN32 | |||
# include <stddef.h> | # include <stddef.h> | |||
#endif | #endif | |||
#if defined(__TURBOC__) || defined(_MSC_VER) || defined(_WIN32) | #if defined(__TURBOC__) || defined(_MSC_VER) || defined(_WIN32) | |||
# include <io.h> | # include <io.h> | |||
#endif | #endif | |||
#if defined(_WIN32) || defined(__CYGWIN__) | ||||
# define WIDECHAR | ||||
#endif | ||||
#ifdef WINAPI_FAMILY | #ifdef WINAPI_FAMILY | |||
# define open _open | # define open _open | |||
# define read _read | # define read _read | |||
# define write _write | # define write _write | |||
# define close _close | # define close _close | |||
#endif | #endif | |||
#if __STDC_WANT_SECURE_LIB__ | ||||
# include <share.h> | ||||
#endif | ||||
#ifdef NO_DEFLATE /* for compatibility with old definition */ | #ifdef NO_DEFLATE /* for compatibility with old definition */ | |||
# define NO_GZCOMPRESS | # define NO_GZCOMPRESS | |||
#endif | #endif | |||
#if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550) | #if defined(STDC99) || (defined(__TURBOC__) && __TURBOC__ >= 0x550) | |||
# ifndef HAVE_VSNPRINTF | # ifndef HAVE_VSNPRINTF | |||
# define HAVE_VSNPRINTF | # define HAVE_VSNPRINTF | |||
# endif | # endif | |||
#endif | #endif | |||
skipping to change at line 102 | skipping to change at line 106 | |||
# define NO_vsnprintf | # define NO_vsnprintf | |||
# endif | # endif | |||
# ifdef __OS400__ | # ifdef __OS400__ | |||
# define NO_vsnprintf | # define NO_vsnprintf | |||
# endif | # endif | |||
# ifdef __MVS__ | # ifdef __MVS__ | |||
# define NO_vsnprintf | # define NO_vsnprintf | |||
# endif | # endif | |||
#endif | #endif | |||
/* unlike snprintf (which is required in C99, yet still not supported by | /* unlike snprintf (which is required in C99), _snprintf does not guarantee | |||
Microsoft more than a decade later!), _snprintf does not guarantee null | null termination of the result -- however this is only used in gzlib.c where | |||
termination of the result -- however this is only used in gzlib.c where | ||||
the result is assured to fit in the space provided */ | the result is assured to fit in the space provided */ | |||
#ifdef _MSC_VER | #if defined(_MSC_VER) && _MSC_VER < 1900 | |||
# define snprintf _snprintf | # define snprintf _snprintf | |||
#endif | #endif | |||
#ifndef local | #ifndef local | |||
# define local static | # define local static | |||
#endif | #endif | |||
/* compile with -Dlocal if your debugger can't find static symbols */ | /* since "static" is used to mean two completely different things in C, we | |||
define "local" for the non-static meaning of "static", for readability | ||||
(compile with -Dlocal if your debugger can't find static symbols) */ | ||||
/* gz* functions always use library allocation functions */ | /* gz* functions always use library allocation functions */ | |||
#ifndef STDC | #ifndef STDC | |||
extern voidp malloc OF((uInt size)); | extern voidp malloc OF((uInt size)); | |||
extern void free OF((voidpf ptr)); | extern void free OF((voidpf ptr)); | |||
#endif | #endif | |||
/* get errno and strerror definition */ | /* get errno and strerror definition */ | |||
#if defined UNDER_CE | #if defined UNDER_CE | |||
# include <windows.h> | # include <windows.h> | |||
# define zstrerror() gz_strwinerror((DWORD)GetLastError()) | # define zstrerror() gz_strwinerror((DWORD)GetLastError()) | |||
#else | #else | |||
# ifndef NO_STRERROR | # ifndef NO_STRERROR | |||
# include <errno.h> | # include <errno.h> | |||
# if __STDC_WANT_SECURE_LIB__ | # define zstrerror() strerror(errno) | |||
# define zstrerror(errbuf, errsize) strerror_s(errbuf, errsize, errno) | ||||
# else | ||||
# define zstrerror() strerror(errno) | ||||
# endif | ||||
# else | # else | |||
# define zstrerror() "stdio error (consult errno)" | # define zstrerror() "stdio error (consult errno)" | |||
# endif | # endif | |||
#endif | #endif | |||
/* provide prototypes for these when building zlib without LFS */ | /* provide prototypes for these when building zlib without LFS */ | |||
#if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0 | #if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0 | |||
ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); | ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); | |||
ZEXTERN z_off64_t ZEXPORT gzseek64 OF((gzFile, z_off64_t, int)); | ZEXTERN z_off64_t ZEXPORT gzseek64 OF((gzFile, z_off64_t, int)); | |||
ZEXTERN z_off64_t ZEXPORT gztell64 OF((gzFile)); | ZEXTERN z_off64_t ZEXPORT gztell64 OF((gzFile)); | |||
skipping to change at line 181 | skipping to change at line 182 | |||
struct gzFile_s x; /* "x" for exposed */ | struct gzFile_s x; /* "x" for exposed */ | |||
/* x.have: number of bytes available at x.next */ | /* x.have: number of bytes available at x.next */ | |||
/* x.next: next output data to deliver or write */ | /* x.next: next output data to deliver or write */ | |||
/* x.pos: current position in uncompressed data */ | /* x.pos: current position in uncompressed data */ | |||
/* used for both reading and writing */ | /* used for both reading and writing */ | |||
int mode; /* see gzip modes above */ | int mode; /* see gzip modes above */ | |||
int fd; /* file descriptor */ | int fd; /* file descriptor */ | |||
char *path; /* path or fd for error messages */ | char *path; /* path or fd for error messages */ | |||
unsigned size; /* buffer size, zero if not allocated yet */ | unsigned size; /* buffer size, zero if not allocated yet */ | |||
unsigned want; /* requested buffer size, default is GZBUFSIZE */ | unsigned want; /* requested buffer size, default is GZBUFSIZE */ | |||
unsigned char *in; /* input buffer */ | unsigned char *in; /* input buffer (double-sized when writing) */ | |||
unsigned char *out; /* output buffer (double-sized when reading) */ | unsigned char *out; /* output buffer (double-sized when reading) */ | |||
int direct; /* 0 if processing gzip, 1 if transparent */ | int direct; /* 0 if processing gzip, 1 if transparent */ | |||
/* just for reading */ | /* just for reading */ | |||
int how; /* 0: get header, 1: copy, 2: decompress */ | int how; /* 0: get header, 1: copy, 2: decompress */ | |||
z_off64_t start; /* where the gzip data started, for rewinding */ | z_off64_t start; /* where the gzip data started, for rewinding */ | |||
int eof; /* true if end of input file reached */ | int eof; /* true if end of input file reached */ | |||
int past; /* true if read requested past end */ | int past; /* true if read requested past end */ | |||
/* just for writing */ | /* just for writing */ | |||
int level; /* compression level */ | int level; /* compression level */ | |||
int strategy; /* compression strategy */ | int strategy; /* compression strategy */ | |||
End of changes. 9 change blocks. | ||||
16 lines changed or deleted | 17 lines changed or added |