1 /* 2 * Copyright (c) 2016-2020, Przemyslaw Skibinski, Yann Collet, Facebook, Inc. 3 * All rights reserved. 4 * 5 * This source code is licensed under both the BSD-style license (found in the 6 * LICENSE file in the root directory of this source tree) and the GPLv2 (found 7 * in the COPYING file in the root directory of this source tree). 8 * You may select, at your option, one of the above-listed licenses. 9 */ 10 11 12 13 #if ZLIB_VERNUM <= 0x1240 14 ZEXTERN int ZEXPORT gzclose_r OF((gzFile file)); 15 ZEXTERN int ZEXPORT gzclose_w OF((gzFile file)); 16 ZEXTERN int ZEXPORT gzbuffer OF((gzFile file, unsigned size)); 17 ZEXTERN z_off_t ZEXPORT gzoffset OF((gzFile file)); 18 19 #if !defined(_WIN32) && defined(Z_LARGE64) 20 # define z_off64_t off64_t 21 #else 22 # if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO) 23 # define z_off64_t __int64 24 # else 25 # define z_off64_t z_off_t 26 # endif 27 #endif 28 #endif 29 30 31 #if ZLIB_VERNUM <= 0x1250 32 struct gzFile_s { 33 unsigned have; 34 unsigned char *next; 35 z_off64_t pos; 36 }; 37 #endif 38 39 40 #if ZLIB_VERNUM <= 0x1270 41 #if defined(_WIN32) && !defined(Z_SOLO) 42 # include <stddef.h> /* for wchar_t */ 43 ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path, 44 const char *mode)); 45 #endif 46 #endif 47 48 49 #if ZLIB_VERNUM < 0x12B0 50 #ifdef Z_SOLO 51 typedef unsigned long z_size_t; 52 #else 53 # define z_longlong long long 54 # if defined(NO_SIZE_T) 55 typedef unsigned NO_SIZE_T z_size_t; 56 # elif defined(STDC) 57 # include <stddef.h> 58 typedef size_t z_size_t; 59 # else 60 typedef unsigned long z_size_t; 61 # endif 62 # undef z_longlong 63 #endif 64 ZEXTERN z_size_t ZEXPORT gzfread OF((voidp buf, z_size_t size, z_size_t nitems, 65 gzFile file)); 66 ZEXTERN z_size_t ZEXPORT gzfwrite OF((voidpc buf, z_size_t size, 67 z_size_t nitems, gzFile file)); 68 #endif 69