node-bin-darwin-arm64 26.3.1 → 26.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +199 -0
- package/bin/node +0 -0
- package/include/node/common.gypi +1 -1
- package/include/node/config.gypi +17 -1
- package/include/node/node.h +1 -9
- package/include/node/node_object_wrap.h +13 -2
- package/include/node/node_version.h +2 -2
- package/include/node/openssl/archs/BSD-x86/asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/BSD-x86/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/BSD-x86/asm_avx2/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/BSD-x86/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/BSD-x86/no-asm/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/BSD-x86/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/BSD-x86_64/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/BSD-x86_64/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/BSD-x86_64/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/BSD-x86_64/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/BSD-x86_64/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/BSD-x86_64/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN32/asm/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN32/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN32/asm_avx2/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN32/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN32/no-asm/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN32/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN64-ARM/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN64A/asm/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN64A/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN64A/asm_avx2/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN64A/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/VC-WIN64A/no-asm/crypto/buildinf.h +1 -1
- package/include/node/openssl/archs/VC-WIN64A/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/aix64-gcc-as/asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/aix64-gcc-as/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/aix64-gcc-as/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/aix64-gcc-as/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/aix64-gcc-as/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin-i386-cc/asm/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/darwin-i386-cc/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/darwin-i386-cc/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/darwin-i386-cc/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin64-arm64-cc/asm/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/darwin64-arm64-cc/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/darwin64-arm64-cc/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/darwin64-arm64-cc/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/darwin64-x86_64-cc/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/darwin64-x86_64-cc/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/darwin64-x86_64-cc/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-aarch64/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux-aarch64/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-aarch64/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux-aarch64/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-aarch64/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux-aarch64/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-armv4/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux-armv4/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-armv4/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux-armv4/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-armv4/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux-armv4/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-elf/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux-elf/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-elf/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux-elf/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-elf/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux-elf/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-ppc64le/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux-ppc64le/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-ppc64le/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux-ppc64le/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-ppc64le/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux-ppc64le/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-x86_64/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux-x86_64/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-x86_64/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux-x86_64/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux-x86_64/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux-x86_64/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux32-s390x/asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux32-s390x/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux32-s390x/asm_avx2/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux32-s390x/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux32-s390x/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux32-s390x/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-loongarch64/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux64-loongarch64/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-mips64/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux64-mips64/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-mips64/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux64-mips64/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-mips64/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux64-mips64/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-riscv64/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux64-riscv64/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-s390x/asm/crypto/buildinf.h +7 -3
- package/include/node/openssl/archs/linux64-s390x/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-s390x/asm_avx2/crypto/buildinf.h +8 -3
- package/include/node/openssl/archs/linux64-s390x/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/linux64-s390x/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/linux64-s390x/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/solaris-x86-gcc/asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/solaris-x86-gcc/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/solaris-x86-gcc/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/solaris-x86-gcc/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/solaris64-x86_64-gcc/asm/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/solaris64-x86_64-gcc/asm_avx2/include/openssl/configuration.h +3 -12
- package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +7 -2
- package/include/node/openssl/archs/solaris64-x86_64-gcc/no-asm/include/openssl/configuration.h +3 -12
- package/include/node/v8-array-buffer.h +21 -0
- package/include/node/zconf.h +26 -18
- package/include/node/zlib.h +215 -96
- package/package.json +1 -1
- package/share/man/man1/node.1 +129 -89
package/include/node/zlib.h
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* zlib.h -- interface of the 'zlib' general purpose compression library
|
|
2
|
-
version 1.3.1,
|
|
2
|
+
version 1.3.2.1, February xxth, 2026
|
|
3
3
|
|
|
4
|
-
Copyright (C) 1995-
|
|
4
|
+
Copyright (C) 1995-2026 Jean-loup Gailly and Mark Adler
|
|
5
5
|
|
|
6
6
|
This software is provided 'as-is', without any express or implied
|
|
7
7
|
warranty. In no event will the authors be held liable for any damages
|
|
@@ -24,25 +24,29 @@
|
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
The data format used by the zlib library is described by RFCs (Request for
|
|
27
|
-
Comments) 1950 to 1952
|
|
27
|
+
Comments) 1950 to 1952 at https://datatracker.ietf.org/doc/html/rfc1950
|
|
28
28
|
(zlib format), rfc1951 (deflate format) and rfc1952 (gzip format).
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
31
|
#ifndef ZLIB_H
|
|
32
32
|
#define ZLIB_H
|
|
33
33
|
|
|
34
|
-
#
|
|
34
|
+
#ifdef ZLIB_BUILD
|
|
35
|
+
# include <zconf.h>
|
|
36
|
+
#else
|
|
37
|
+
# include "zconf.h"
|
|
38
|
+
#endif
|
|
35
39
|
|
|
36
40
|
#ifdef __cplusplus
|
|
37
41
|
extern "C" {
|
|
38
42
|
#endif
|
|
39
43
|
|
|
40
|
-
#define ZLIB_VERSION "1.3.1"
|
|
41
|
-
#define ZLIB_VERNUM
|
|
44
|
+
#define ZLIB_VERSION "1.3.2.1-motley"
|
|
45
|
+
#define ZLIB_VERNUM 0x1321
|
|
42
46
|
#define ZLIB_VER_MAJOR 1
|
|
43
47
|
#define ZLIB_VER_MINOR 3
|
|
44
|
-
#define ZLIB_VER_REVISION
|
|
45
|
-
#define ZLIB_VER_SUBREVISION
|
|
48
|
+
#define ZLIB_VER_REVISION 2
|
|
49
|
+
#define ZLIB_VER_SUBREVISION 1
|
|
46
50
|
|
|
47
51
|
/*
|
|
48
52
|
The 'zlib' compression library provides in-memory compression and
|
|
@@ -440,7 +444,7 @@ ZEXTERN int ZEXPORT inflate(z_streamp strm, int flush);
|
|
|
440
444
|
|
|
441
445
|
The Z_BLOCK option assists in appending to or combining deflate streams.
|
|
442
446
|
To assist in this, on return inflate() always sets strm->data_type to the
|
|
443
|
-
number of unused bits in the
|
|
447
|
+
number of unused bits in the input taken from strm->next_in, plus 64 if
|
|
444
448
|
inflate() is currently decoding the last block in the deflate stream, plus
|
|
445
449
|
128 if inflate() returned immediately after decoding an end-of-block code or
|
|
446
450
|
decoding the complete header up to just before the first byte of the deflate
|
|
@@ -586,18 +590,21 @@ ZEXTERN int ZEXPORT deflateInit2(z_streamp strm,
|
|
|
586
590
|
|
|
587
591
|
The strategy parameter is used to tune the compression algorithm. Use the
|
|
588
592
|
value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a
|
|
589
|
-
filter (or predictor),
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
random distribution. In this case, the
|
|
593
|
-
compress them better. The effect of
|
|
594
|
-
coding and less string matching
|
|
595
|
-
|
|
596
|
-
fast as Z_HUFFMAN_ONLY, but give better
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
593
|
+
filter (or predictor), Z_RLE to limit match distances to one (run-length
|
|
594
|
+
encoding), or Z_HUFFMAN_ONLY to force Huffman encoding only (no string
|
|
595
|
+
matching). Filtered data consists mostly of small values with a somewhat
|
|
596
|
+
random distribution, as produced by the PNG filters. In this case, the
|
|
597
|
+
compression algorithm is tuned to compress them better. The effect of
|
|
598
|
+
Z_FILTERED is to force more Huffman coding and less string matching than the
|
|
599
|
+
default; it is intermediate between Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY.
|
|
600
|
+
Z_RLE is almost as fast as Z_HUFFMAN_ONLY, but should give better
|
|
601
|
+
compression for PNG image data than Huffman only. The degree of string
|
|
602
|
+
matching from most to none is: Z_DEFAULT_STRATEGY, Z_FILTERED, Z_RLE, then
|
|
603
|
+
Z_HUFFMAN_ONLY. The strategy parameter affects the compression ratio but
|
|
604
|
+
never the correctness of the compressed output, even if it is not set
|
|
605
|
+
optimally for the given data. Z_FIXED uses the default string matching, but
|
|
606
|
+
prevents the use of dynamic Huffman codes, allowing for a simpler decoder
|
|
607
|
+
for special applications.
|
|
601
608
|
|
|
602
609
|
deflateInit2 returns Z_OK if success, Z_MEM_ERROR if there was not enough
|
|
603
610
|
memory, Z_STREAM_ERROR if any parameter is invalid (such as an invalid
|
|
@@ -757,8 +764,8 @@ ZEXTERN int ZEXPORT deflateTune(z_streamp strm,
|
|
|
757
764
|
returns Z_OK on success, or Z_STREAM_ERROR for an invalid deflate stream.
|
|
758
765
|
*/
|
|
759
766
|
|
|
760
|
-
ZEXTERN uLong ZEXPORT deflateBound(z_streamp strm,
|
|
761
|
-
|
|
767
|
+
ZEXTERN uLong ZEXPORT deflateBound(z_streamp strm, uLong sourceLen);
|
|
768
|
+
ZEXTERN z_size_t ZEXPORT deflateBound_z(z_streamp strm, z_size_t sourceLen);
|
|
762
769
|
/*
|
|
763
770
|
deflateBound() returns an upper bound on the compressed size after
|
|
764
771
|
deflation of sourceLen bytes. It must be called after deflateInit() or
|
|
@@ -770,6 +777,9 @@ ZEXTERN uLong ZEXPORT deflateBound(z_streamp strm,
|
|
|
770
777
|
to return Z_STREAM_END. Note that it is possible for the compressed size to
|
|
771
778
|
be larger than the value returned by deflateBound() if flush options other
|
|
772
779
|
than Z_FINISH or Z_NO_FLUSH are used.
|
|
780
|
+
|
|
781
|
+
delfateBound_z() is the same, but takes and returns a size_t length. Note
|
|
782
|
+
that a long is 32 bits on Windows.
|
|
773
783
|
*/
|
|
774
784
|
|
|
775
785
|
ZEXTERN int ZEXPORT deflatePending(z_streamp strm,
|
|
@@ -784,6 +794,21 @@ ZEXTERN int ZEXPORT deflatePending(z_streamp strm,
|
|
|
784
794
|
or bits are Z_NULL, then those values are not set.
|
|
785
795
|
|
|
786
796
|
deflatePending returns Z_OK if success, or Z_STREAM_ERROR if the source
|
|
797
|
+
stream state was inconsistent. If an int is 16 bits and memLevel is 9, then
|
|
798
|
+
it is possible for the number of pending bytes to not fit in an unsigned. In
|
|
799
|
+
that case Z_BUF_ERROR is returned and *pending is set to the maximum value
|
|
800
|
+
of an unsigned.
|
|
801
|
+
*/
|
|
802
|
+
|
|
803
|
+
ZEXTERN int ZEXPORT deflateUsed(z_streamp strm,
|
|
804
|
+
int *bits);
|
|
805
|
+
/*
|
|
806
|
+
deflateUsed() returns in *bits the most recent number of deflate bits used
|
|
807
|
+
in the last byte when flushing to a byte boundary. The result is in 1..8, or
|
|
808
|
+
0 if there has not yet been a flush. This helps determine the location of
|
|
809
|
+
the last bit of a deflate stream.
|
|
810
|
+
|
|
811
|
+
deflateUsed returns Z_OK if success, or Z_STREAM_ERROR if the source
|
|
787
812
|
stream state was inconsistent.
|
|
788
813
|
*/
|
|
789
814
|
|
|
@@ -986,13 +1011,15 @@ ZEXTERN int ZEXPORT inflatePrime(z_streamp strm,
|
|
|
986
1011
|
int bits,
|
|
987
1012
|
int value);
|
|
988
1013
|
/*
|
|
989
|
-
This function inserts bits in the inflate input stream. The intent is
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
1014
|
+
This function inserts bits in the inflate input stream. The intent is to
|
|
1015
|
+
use inflatePrime() to start inflating at a bit position in the middle of a
|
|
1016
|
+
byte. The provided bits will be used before any bytes are used from
|
|
1017
|
+
next_in. This function should be used with raw inflate, before the first
|
|
1018
|
+
inflate() call, after inflateInit2() or inflateReset(). It can also be used
|
|
1019
|
+
after an inflate() return indicates the end of a deflate block or header
|
|
1020
|
+
when using Z_BLOCK. bits must be less than or equal to 16, and that many of
|
|
1021
|
+
the least significant bits of value will be inserted in the input. The
|
|
1022
|
+
other bits in value can be non-zero, and will be ignored.
|
|
996
1023
|
|
|
997
1024
|
If bits is negative, then the input stream bit buffer is emptied. Then
|
|
998
1025
|
inflatePrime() can be called again to put bits in the buffer. This is used
|
|
@@ -1000,7 +1027,15 @@ ZEXTERN int ZEXPORT inflatePrime(z_streamp strm,
|
|
|
1000
1027
|
to feeding inflate codes.
|
|
1001
1028
|
|
|
1002
1029
|
inflatePrime returns Z_OK if success, or Z_STREAM_ERROR if the source
|
|
1003
|
-
stream state was inconsistent.
|
|
1030
|
+
stream state was inconsistent, or if bits is out of range. If inflate was
|
|
1031
|
+
in the middle of processing a header, trailer, or stored block lengths, then
|
|
1032
|
+
it is possible for there to be only eight bits available in the bit buffer.
|
|
1033
|
+
In that case, bits > 8 is considered out of range. However, when used as
|
|
1034
|
+
outlined above, there will always be 16 bits available in the buffer for
|
|
1035
|
+
insertion. As noted in its documentation above, inflate records the number
|
|
1036
|
+
of bits in the bit buffer on return in data_type. 32 minus that is the
|
|
1037
|
+
number of bits available for insertion. inflatePrime does not update
|
|
1038
|
+
data_type with the new number of bits in buffer.
|
|
1004
1039
|
*/
|
|
1005
1040
|
|
|
1006
1041
|
ZEXTERN long ZEXPORT inflateMark(z_streamp strm);
|
|
@@ -1046,20 +1081,22 @@ ZEXTERN int ZEXPORT inflateGetHeader(z_streamp strm,
|
|
|
1046
1081
|
|
|
1047
1082
|
The text, time, xflags, and os fields are filled in with the gzip header
|
|
1048
1083
|
contents. hcrc is set to true if there is a header CRC. (The header CRC
|
|
1049
|
-
was valid if done is set to one.)
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1084
|
+
was valid if done is set to one.) The extra, name, and comment pointers
|
|
1085
|
+
much each be either Z_NULL or point to space to store that information from
|
|
1086
|
+
the header. If extra is not Z_NULL, then extra_max contains the maximum
|
|
1087
|
+
number of bytes that can be written to extra. Once done is true, extra_len
|
|
1088
|
+
contains the actual extra field length, and extra contains the extra field,
|
|
1089
|
+
or that field truncated if extra_max is less than extra_len. If name is not
|
|
1090
|
+
Z_NULL, then up to name_max characters, including the terminating zero, are
|
|
1091
|
+
written there. If comment is not Z_NULL, then up to comm_max characters,
|
|
1092
|
+
including the terminating zero, are written there. The application can tell
|
|
1093
|
+
that the name or comment did not fit in the provided space by the absence of
|
|
1094
|
+
a terminating zero. If any of extra, name, or comment are not present in
|
|
1095
|
+
the header, then that field's pointer is set to Z_NULL. This allows the use
|
|
1096
|
+
of deflateSetHeader() with the returned structure to duplicate the header.
|
|
1097
|
+
Note that if those fields initially pointed to allocated memory, then the
|
|
1098
|
+
application will need to save them elsewhere so that they can be eventually
|
|
1099
|
+
freed.
|
|
1063
1100
|
|
|
1064
1101
|
If inflateGetHeader is not used, then the header information is simply
|
|
1065
1102
|
discarded. The header is always checked for validity, including the header
|
|
@@ -1207,13 +1244,14 @@ ZEXTERN uLong ZEXPORT zlibCompileFlags(void);
|
|
|
1207
1244
|
21: FASTEST -- deflate algorithm with only one, lowest compression level
|
|
1208
1245
|
22,23: 0 (reserved)
|
|
1209
1246
|
|
|
1210
|
-
The sprintf variant used by gzprintf (
|
|
1247
|
+
The sprintf variant used by gzprintf (all zeros is best):
|
|
1211
1248
|
24: 0 = vs*, 1 = s* -- 1 means limited to 20 arguments after the format
|
|
1212
|
-
25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() not secure!
|
|
1249
|
+
25: 0 = *nprintf, 1 = *printf -- 1 means gzprintf() is not secure!
|
|
1213
1250
|
26: 0 = returns value, 1 = void -- 1 means inferred string length returned
|
|
1251
|
+
27: 0 = gzprintf() present, 1 = not -- 1 means gzprintf() returns an error
|
|
1214
1252
|
|
|
1215
1253
|
Remainder:
|
|
1216
|
-
|
|
1254
|
+
28-31: 0 (reserved)
|
|
1217
1255
|
*/
|
|
1218
1256
|
|
|
1219
1257
|
#ifndef Z_SOLO
|
|
@@ -1225,11 +1263,14 @@ ZEXTERN uLong ZEXPORT zlibCompileFlags(void);
|
|
|
1225
1263
|
stream-oriented functions. To simplify the interface, some default options
|
|
1226
1264
|
are assumed (compression level and memory usage, standard memory allocation
|
|
1227
1265
|
functions). The source code of these utility functions can be modified if
|
|
1228
|
-
you need special options.
|
|
1266
|
+
you need special options. The _z versions of the functions use the size_t
|
|
1267
|
+
type for lengths. Note that a long is 32 bits on Windows.
|
|
1229
1268
|
*/
|
|
1230
1269
|
|
|
1231
|
-
ZEXTERN int ZEXPORT compress(Bytef *dest,
|
|
1270
|
+
ZEXTERN int ZEXPORT compress(Bytef *dest, uLongf *destLen,
|
|
1232
1271
|
const Bytef *source, uLong sourceLen);
|
|
1272
|
+
ZEXTERN int ZEXPORT compress_z(Bytef *dest, z_size_t *destLen,
|
|
1273
|
+
const Bytef *source, z_size_t sourceLen);
|
|
1233
1274
|
/*
|
|
1234
1275
|
Compresses the source buffer into the destination buffer. sourceLen is
|
|
1235
1276
|
the byte length of the source buffer. Upon entry, destLen is the total size
|
|
@@ -1243,9 +1284,12 @@ ZEXTERN int ZEXPORT compress(Bytef *dest, uLongf *destLen,
|
|
|
1243
1284
|
buffer.
|
|
1244
1285
|
*/
|
|
1245
1286
|
|
|
1246
|
-
ZEXTERN int ZEXPORT compress2(Bytef *dest,
|
|
1287
|
+
ZEXTERN int ZEXPORT compress2(Bytef *dest, uLongf *destLen,
|
|
1247
1288
|
const Bytef *source, uLong sourceLen,
|
|
1248
1289
|
int level);
|
|
1290
|
+
ZEXTERN int ZEXPORT compress2_z(Bytef *dest, z_size_t *destLen,
|
|
1291
|
+
const Bytef *source, z_size_t sourceLen,
|
|
1292
|
+
int level);
|
|
1249
1293
|
/*
|
|
1250
1294
|
Compresses the source buffer into the destination buffer. The level
|
|
1251
1295
|
parameter has the same meaning as in deflateInit. sourceLen is the byte
|
|
@@ -1260,21 +1304,24 @@ ZEXTERN int ZEXPORT compress2(Bytef *dest, uLongf *destLen,
|
|
|
1260
1304
|
*/
|
|
1261
1305
|
|
|
1262
1306
|
ZEXTERN uLong ZEXPORT compressBound(uLong sourceLen);
|
|
1307
|
+
ZEXTERN z_size_t ZEXPORT compressBound_z(z_size_t sourceLen);
|
|
1263
1308
|
/*
|
|
1264
1309
|
compressBound() returns an upper bound on the compressed size after
|
|
1265
1310
|
compress() or compress2() on sourceLen bytes. It would be used before a
|
|
1266
1311
|
compress() or compress2() call to allocate the destination buffer.
|
|
1267
1312
|
*/
|
|
1268
1313
|
|
|
1269
|
-
ZEXTERN int ZEXPORT uncompress(Bytef *dest,
|
|
1314
|
+
ZEXTERN int ZEXPORT uncompress(Bytef *dest, uLongf *destLen,
|
|
1270
1315
|
const Bytef *source, uLong sourceLen);
|
|
1316
|
+
ZEXTERN int ZEXPORT uncompress_z(Bytef *dest, z_size_t *destLen,
|
|
1317
|
+
const Bytef *source, z_size_t sourceLen);
|
|
1271
1318
|
/*
|
|
1272
1319
|
Decompresses the source buffer into the destination buffer. sourceLen is
|
|
1273
|
-
the byte length of the source buffer.
|
|
1320
|
+
the byte length of the source buffer. On entry, *destLen is the total size
|
|
1274
1321
|
of the destination buffer, which must be large enough to hold the entire
|
|
1275
1322
|
uncompressed data. (The size of the uncompressed data must have been saved
|
|
1276
1323
|
previously by the compressor and transmitted to the decompressor by some
|
|
1277
|
-
mechanism outside the scope of this compression library.)
|
|
1324
|
+
mechanism outside the scope of this compression library.) On exit, *destLen
|
|
1278
1325
|
is the actual size of the uncompressed data.
|
|
1279
1326
|
|
|
1280
1327
|
uncompress returns Z_OK if success, Z_MEM_ERROR if there was not
|
|
@@ -1284,8 +1331,10 @@ ZEXTERN int ZEXPORT uncompress(Bytef *dest, uLongf *destLen,
|
|
|
1284
1331
|
buffer with the uncompressed data up to that point.
|
|
1285
1332
|
*/
|
|
1286
1333
|
|
|
1287
|
-
ZEXTERN int ZEXPORT uncompress2(Bytef *dest,
|
|
1334
|
+
ZEXTERN int ZEXPORT uncompress2(Bytef *dest, uLongf *destLen,
|
|
1288
1335
|
const Bytef *source, uLong *sourceLen);
|
|
1336
|
+
ZEXTERN int ZEXPORT uncompress2_z(Bytef *dest, z_size_t *destLen,
|
|
1337
|
+
const Bytef *source, z_size_t *sourceLen);
|
|
1289
1338
|
/*
|
|
1290
1339
|
Same as uncompress, except that sourceLen is a pointer, where the
|
|
1291
1340
|
length of the source is *sourceLen. On return, *sourceLen is the number of
|
|
@@ -1313,13 +1362,17 @@ ZEXTERN gzFile ZEXPORT gzopen(const char *path, const char *mode);
|
|
|
1313
1362
|
'R' for run-length encoding as in "wb1R", or 'F' for fixed code compression
|
|
1314
1363
|
as in "wb9F". (See the description of deflateInit2 for more information
|
|
1315
1364
|
about the strategy parameter.) 'T' will request transparent writing or
|
|
1316
|
-
appending with no compression and not using the gzip format.
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
be
|
|
1365
|
+
appending with no compression and not using the gzip format. 'T' cannot be
|
|
1366
|
+
used to force transparent reading. Transparent reading is automatically
|
|
1367
|
+
performed if there is no gzip header at the start. Transparent reading can
|
|
1368
|
+
be disabled with the 'G' option, which will instead return an error if there
|
|
1369
|
+
is no gzip header. 'N' will open the file in non-blocking mode.
|
|
1370
|
+
|
|
1371
|
+
'a' can be used instead of 'w' to request that the gzip stream that will
|
|
1372
|
+
be written be appended to the file. '+' will result in an error, since
|
|
1320
1373
|
reading and writing to the same gzip file is not supported. The addition of
|
|
1321
|
-
|
|
1322
|
-
already exists. On systems that support it, the addition of
|
|
1374
|
+
'x' when writing will create the file exclusively, which fails if the file
|
|
1375
|
+
already exists. On systems that support it, the addition of 'e' when
|
|
1323
1376
|
reading or writing will set the flag to close the file on an execve() call.
|
|
1324
1377
|
|
|
1325
1378
|
These functions, as well as gzip, will read and decode a sequence of gzip
|
|
@@ -1338,14 +1391,22 @@ ZEXTERN gzFile ZEXPORT gzopen(const char *path, const char *mode);
|
|
|
1338
1391
|
insufficient memory to allocate the gzFile state, or if an invalid mode was
|
|
1339
1392
|
specified (an 'r', 'w', or 'a' was not provided, or '+' was provided).
|
|
1340
1393
|
errno can be checked to determine if the reason gzopen failed was that the
|
|
1341
|
-
file could not be opened.
|
|
1394
|
+
file could not be opened. Note that if 'N' is in mode for non-blocking, the
|
|
1395
|
+
open() itself can fail in order to not block. In that case gzopen() will
|
|
1396
|
+
return NULL and errno will be EAGAIN or ENONBLOCK. The call to gzopen() can
|
|
1397
|
+
then be re-tried. If the application would like to block on opening the
|
|
1398
|
+
file, then it can use open() without O_NONBLOCK, and then gzdopen() with the
|
|
1399
|
+
resulting file descriptor and 'N' in the mode, which will set it to non-
|
|
1400
|
+
blocking.
|
|
1342
1401
|
*/
|
|
1343
1402
|
|
|
1344
1403
|
ZEXTERN gzFile ZEXPORT gzdopen(int fd, const char *mode);
|
|
1345
1404
|
/*
|
|
1346
1405
|
Associate a gzFile with the file descriptor fd. File descriptors are
|
|
1347
1406
|
obtained from calls like open, dup, creat, pipe or fileno (if the file has
|
|
1348
|
-
been previously opened with fopen). The mode parameter is as in gzopen.
|
|
1407
|
+
been previously opened with fopen). The mode parameter is as in gzopen. An
|
|
1408
|
+
'e' in mode will set fd's flag to close the file on an execve() call. An 'N'
|
|
1409
|
+
in mode will set fd's non-blocking flag.
|
|
1349
1410
|
|
|
1350
1411
|
The next call of gzclose on the returned gzFile will also close the file
|
|
1351
1412
|
descriptor fd, just like fclose(fdopen(fd, mode)) closes the file descriptor
|
|
@@ -1415,10 +1476,16 @@ ZEXTERN int ZEXPORT gzread(gzFile file, voidp buf, unsigned len);
|
|
|
1415
1476
|
stream. Alternatively, gzerror can be used before gzclose to detect this
|
|
1416
1477
|
case.
|
|
1417
1478
|
|
|
1479
|
+
gzread can be used to read a gzip file on a non-blocking device. If the
|
|
1480
|
+
input stalls and there is no uncompressed data to return, then gzread() will
|
|
1481
|
+
return -1, and errno will be EAGAIN or EWOULDBLOCK. gzread() can then be
|
|
1482
|
+
called again.
|
|
1483
|
+
|
|
1418
1484
|
gzread returns the number of uncompressed bytes actually read, less than
|
|
1419
1485
|
len for end of file, or -1 for error. If len is too large to fit in an int,
|
|
1420
1486
|
then nothing is read, -1 is returned, and the error state is set to
|
|
1421
|
-
Z_STREAM_ERROR.
|
|
1487
|
+
Z_STREAM_ERROR. If some data was read before an error, then that data is
|
|
1488
|
+
returned until exhausted, after which the next call will signal the error.
|
|
1422
1489
|
*/
|
|
1423
1490
|
|
|
1424
1491
|
ZEXTERN z_size_t ZEXPORT gzfread(voidp buf, z_size_t size, z_size_t nitems,
|
|
@@ -1442,15 +1509,20 @@ ZEXTERN z_size_t ZEXPORT gzfread(voidp buf, z_size_t size, z_size_t nitems,
|
|
|
1442
1509
|
multiple of size, then the final partial item is nevertheless read into buf
|
|
1443
1510
|
and the end-of-file flag is set. The length of the partial item read is not
|
|
1444
1511
|
provided, but could be inferred from the result of gztell(). This behavior
|
|
1445
|
-
is the same as
|
|
1446
|
-
|
|
1447
|
-
file
|
|
1512
|
+
is the same as that of fread() implementations in common libraries. This
|
|
1513
|
+
could result in data loss if used with size != 1 when reading a concurrently
|
|
1514
|
+
written file or a non-blocking file. In that case, use size == 1 or gzread()
|
|
1515
|
+
instead.
|
|
1448
1516
|
*/
|
|
1449
1517
|
|
|
1450
1518
|
ZEXTERN int ZEXPORT gzwrite(gzFile file, voidpc buf, unsigned len);
|
|
1451
1519
|
/*
|
|
1452
1520
|
Compress and write the len uncompressed bytes at buf to file. gzwrite
|
|
1453
|
-
returns the number of uncompressed bytes written or 0 in case of error
|
|
1521
|
+
returns the number of uncompressed bytes written, or 0 in case of error or
|
|
1522
|
+
if len is 0. If the write destination is non-blocking, then gzwrite() may
|
|
1523
|
+
return a number of bytes written that is not 0 and less than len.
|
|
1524
|
+
|
|
1525
|
+
If len does not fit in an int, then 0 is returned and nothing is written.
|
|
1454
1526
|
*/
|
|
1455
1527
|
|
|
1456
1528
|
ZEXTERN z_size_t ZEXPORT gzfwrite(voidpc buf, z_size_t size,
|
|
@@ -1465,9 +1537,18 @@ ZEXTERN z_size_t ZEXPORT gzfwrite(voidpc buf, z_size_t size,
|
|
|
1465
1537
|
if there was an error. If the multiplication of size and nitems overflows,
|
|
1466
1538
|
i.e. the product does not fit in a z_size_t, then nothing is written, zero
|
|
1467
1539
|
is returned, and the error state is set to Z_STREAM_ERROR.
|
|
1540
|
+
|
|
1541
|
+
If writing a concurrently read file or a non-blocking file with size != 1,
|
|
1542
|
+
a partial item could be written, with no way of knowing how much of it was
|
|
1543
|
+
not written, resulting in data loss. In that case, use size == 1 or
|
|
1544
|
+
gzwrite() instead.
|
|
1468
1545
|
*/
|
|
1469
1546
|
|
|
1547
|
+
#if defined(STDC) || defined(Z_HAVE_STDARG_H)
|
|
1470
1548
|
ZEXTERN int ZEXPORTVA gzprintf(gzFile file, const char *format, ...);
|
|
1549
|
+
#else
|
|
1550
|
+
ZEXTERN int ZEXPORTVA gzprintf();
|
|
1551
|
+
#endif
|
|
1471
1552
|
/*
|
|
1472
1553
|
Convert, format, compress, and write the arguments (...) to file under
|
|
1473
1554
|
control of the string format, as in fprintf. gzprintf returns the number of
|
|
@@ -1475,11 +1556,19 @@ ZEXTERN int ZEXPORTVA gzprintf(gzFile file, const char *format, ...);
|
|
|
1475
1556
|
of error. The number of uncompressed bytes written is limited to 8191, or
|
|
1476
1557
|
one less than the buffer size given to gzbuffer(). The caller should assure
|
|
1477
1558
|
that this limit is not exceeded. If it is exceeded, then gzprintf() will
|
|
1478
|
-
return an error (0) with nothing written.
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1559
|
+
return an error (0) with nothing written.
|
|
1560
|
+
|
|
1561
|
+
In that last case, there may also be a buffer overflow with unpredictable
|
|
1562
|
+
consequences, which is possible only if zlib was compiled with the insecure
|
|
1563
|
+
functions sprintf() or vsprintf(), because the secure snprintf() and
|
|
1564
|
+
vsnprintf() functions were not available. That would only be the case for
|
|
1565
|
+
a non-ANSI C compiler. zlib may have been built without gzprintf() because
|
|
1566
|
+
secure functions were not available and having gzprintf() be insecure was
|
|
1567
|
+
not an option, in which case, gzprintf() returns Z_STREAM_ERROR. All of
|
|
1568
|
+
these possibilities can be determined using zlibCompileFlags().
|
|
1569
|
+
|
|
1570
|
+
If a Z_BUF_ERROR is returned, then nothing was written due to a stall on
|
|
1571
|
+
the non-blocking write destination.
|
|
1483
1572
|
*/
|
|
1484
1573
|
|
|
1485
1574
|
ZEXTERN int ZEXPORT gzputs(gzFile file, const char *s);
|
|
@@ -1488,6 +1577,11 @@ ZEXTERN int ZEXPORT gzputs(gzFile file, const char *s);
|
|
|
1488
1577
|
the terminating null character.
|
|
1489
1578
|
|
|
1490
1579
|
gzputs returns the number of characters written, or -1 in case of error.
|
|
1580
|
+
The number of characters written may be less than the length of the string
|
|
1581
|
+
if the write destination is non-blocking.
|
|
1582
|
+
|
|
1583
|
+
If the length of the string does not fit in an int, then -1 is returned
|
|
1584
|
+
and nothing is written.
|
|
1491
1585
|
*/
|
|
1492
1586
|
|
|
1493
1587
|
ZEXTERN char * ZEXPORT gzgets(gzFile file, char *buf, int len);
|
|
@@ -1500,8 +1594,13 @@ ZEXTERN char * ZEXPORT gzgets(gzFile file, char *buf, int len);
|
|
|
1500
1594
|
left untouched.
|
|
1501
1595
|
|
|
1502
1596
|
gzgets returns buf which is a null-terminated string, or it returns NULL
|
|
1503
|
-
for end-of-file or in case of error.
|
|
1504
|
-
|
|
1597
|
+
for end-of-file or in case of error. If some data was read before an error,
|
|
1598
|
+
then that data is returned until exhausted, after which the next call will
|
|
1599
|
+
return NULL to signal the error.
|
|
1600
|
+
|
|
1601
|
+
gzgets can be used on a file being concurrently written, and on a non-
|
|
1602
|
+
blocking device, both as for gzread(). However lines may be broken in the
|
|
1603
|
+
middle, leaving it up to the application to reassemble them as needed.
|
|
1505
1604
|
*/
|
|
1506
1605
|
|
|
1507
1606
|
ZEXTERN int ZEXPORT gzputc(gzFile file, int c);
|
|
@@ -1512,11 +1611,19 @@ ZEXTERN int ZEXPORT gzputc(gzFile file, int c);
|
|
|
1512
1611
|
|
|
1513
1612
|
ZEXTERN int ZEXPORT gzgetc(gzFile file);
|
|
1514
1613
|
/*
|
|
1515
|
-
Read and decompress one byte from file.
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1614
|
+
Read and decompress one byte from file. gzgetc returns this byte or -1 in
|
|
1615
|
+
case of end of file or error. If some data was read before an error, then
|
|
1616
|
+
that data is returned until exhausted, after which the next call will return
|
|
1617
|
+
-1 to signal the error.
|
|
1618
|
+
|
|
1619
|
+
This is implemented as a macro for speed. As such, it does not do all of
|
|
1620
|
+
the checking the other functions do. I.e. it does not check to see if file
|
|
1621
|
+
is NULL, nor whether the structure file points to has been clobbered or not.
|
|
1622
|
+
|
|
1623
|
+
gzgetc can be used to read a gzip file on a non-blocking device. If the
|
|
1624
|
+
input stalls and there is no uncompressed data to return, then gzgetc() will
|
|
1625
|
+
return -1, and errno will be EAGAIN or EWOULDBLOCK. gzread() can then be
|
|
1626
|
+
called again.
|
|
1520
1627
|
*/
|
|
1521
1628
|
|
|
1522
1629
|
ZEXTERN int ZEXPORT gzungetc(int c, gzFile file);
|
|
@@ -1529,6 +1636,11 @@ ZEXTERN int ZEXPORT gzungetc(int c, gzFile file);
|
|
|
1529
1636
|
output buffer size of pushed characters is allowed. (See gzbuffer above.)
|
|
1530
1637
|
The pushed character will be discarded if the stream is repositioned with
|
|
1531
1638
|
gzseek() or gzrewind().
|
|
1639
|
+
|
|
1640
|
+
gzungetc(-1, file) will force any pending seek to execute. Then gztell()
|
|
1641
|
+
will report the position, even if the requested seek reached end of file.
|
|
1642
|
+
This can be used to determine the number of uncompressed bytes in a gzip
|
|
1643
|
+
file without having to read it into a buffer.
|
|
1532
1644
|
*/
|
|
1533
1645
|
|
|
1534
1646
|
ZEXTERN int ZEXPORT gzflush(gzFile file, int flush);
|
|
@@ -1558,7 +1670,8 @@ ZEXTERN z_off_t ZEXPORT gzseek(gzFile file,
|
|
|
1558
1670
|
If the file is opened for reading, this function is emulated but can be
|
|
1559
1671
|
extremely slow. If the file is opened for writing, only forward seeks are
|
|
1560
1672
|
supported; gzseek then compresses a sequence of zeroes up to the new
|
|
1561
|
-
starting position.
|
|
1673
|
+
starting position. For reading or writing, any actual seeking is deferred
|
|
1674
|
+
until the next read or write operation, or close operation when writing.
|
|
1562
1675
|
|
|
1563
1676
|
gzseek returns the resulting offset location as measured in bytes from
|
|
1564
1677
|
the beginning of the uncompressed stream, or -1 in case of error, in
|
|
@@ -1566,7 +1679,7 @@ ZEXTERN z_off_t ZEXPORT gzseek(gzFile file,
|
|
|
1566
1679
|
would be before the current position.
|
|
1567
1680
|
*/
|
|
1568
1681
|
|
|
1569
|
-
ZEXTERN int ZEXPORT
|
|
1682
|
+
ZEXTERN int ZEXPORT gzrewind(gzFile file);
|
|
1570
1683
|
/*
|
|
1571
1684
|
Rewind file. This function is supported only for reading.
|
|
1572
1685
|
|
|
@@ -1574,7 +1687,7 @@ ZEXTERN int ZEXPORT gzrewind(gzFile file);
|
|
|
1574
1687
|
*/
|
|
1575
1688
|
|
|
1576
1689
|
/*
|
|
1577
|
-
ZEXTERN z_off_t ZEXPORT
|
|
1690
|
+
ZEXTERN z_off_t ZEXPORT gztell(gzFile file);
|
|
1578
1691
|
|
|
1579
1692
|
Return the starting position for the next gzread or gzwrite on file.
|
|
1580
1693
|
This position represents a number of bytes in the uncompressed data stream,
|
|
@@ -1619,8 +1732,11 @@ ZEXTERN int ZEXPORT gzdirect(gzFile file);
|
|
|
1619
1732
|
|
|
1620
1733
|
If gzdirect() is used immediately after gzopen() or gzdopen() it will
|
|
1621
1734
|
cause buffers to be allocated to allow reading the file to determine if it
|
|
1622
|
-
is a gzip file.
|
|
1623
|
-
gzdirect().
|
|
1735
|
+
is a gzip file. Therefore if gzbuffer() is used, it should be called before
|
|
1736
|
+
gzdirect(). If the input is being written concurrently or the device is non-
|
|
1737
|
+
blocking, then gzdirect() may give a different answer once four bytes of
|
|
1738
|
+
input have been accumulated, which is what is needed to confirm or deny a
|
|
1739
|
+
gzip header. Before this, gzdirect() will return true (1).
|
|
1624
1740
|
|
|
1625
1741
|
When writing, gzdirect() returns true (1) if transparent writing was
|
|
1626
1742
|
requested ("wT" for the gzopen() mode), or false (0) otherwise. (Note:
|
|
@@ -1630,7 +1746,7 @@ ZEXTERN int ZEXPORT gzdirect(gzFile file);
|
|
|
1630
1746
|
gzip file reading and decompression, which may not be desired.)
|
|
1631
1747
|
*/
|
|
1632
1748
|
|
|
1633
|
-
ZEXTERN int ZEXPORT
|
|
1749
|
+
ZEXTERN int ZEXPORT gzclose(gzFile file);
|
|
1634
1750
|
/*
|
|
1635
1751
|
Flush all pending output for file, if necessary, close file and
|
|
1636
1752
|
deallocate the (de)compression state. Note that once file is closed, you
|
|
@@ -1658,9 +1774,10 @@ ZEXTERN int ZEXPORT gzclose_w(gzFile file);
|
|
|
1658
1774
|
ZEXTERN const char * ZEXPORT gzerror(gzFile file, int *errnum);
|
|
1659
1775
|
/*
|
|
1660
1776
|
Return the error message for the last error which occurred on file.
|
|
1661
|
-
errnum is set to zlib error number. If an error
|
|
1662
|
-
and not in the compression library, errnum is
|
|
1663
|
-
application may consult errno to get the exact error
|
|
1777
|
+
If errnum is not NULL, *errnum is set to zlib error number. If an error
|
|
1778
|
+
occurred in the file system and not in the compression library, *errnum is
|
|
1779
|
+
set to Z_ERRNO and the application may consult errno to get the exact error
|
|
1780
|
+
code.
|
|
1664
1781
|
|
|
1665
1782
|
The application must not modify the returned string. Future calls to
|
|
1666
1783
|
this function may invalidate the previously returned string. If file is
|
|
@@ -1711,7 +1828,8 @@ ZEXTERN uLong ZEXPORT adler32(uLong adler, const Bytef *buf, uInt len);
|
|
|
1711
1828
|
ZEXTERN uLong ZEXPORT adler32_z(uLong adler, const Bytef *buf,
|
|
1712
1829
|
z_size_t len);
|
|
1713
1830
|
/*
|
|
1714
|
-
Same as adler32(), but with a size_t length.
|
|
1831
|
+
Same as adler32(), but with a size_t length. Note that a long is 32 bits
|
|
1832
|
+
on Windows.
|
|
1715
1833
|
*/
|
|
1716
1834
|
|
|
1717
1835
|
/*
|
|
@@ -1747,7 +1865,8 @@ ZEXTERN uLong ZEXPORT crc32(uLong crc, const Bytef *buf, uInt len);
|
|
|
1747
1865
|
ZEXTERN uLong ZEXPORT crc32_z(uLong crc, const Bytef *buf,
|
|
1748
1866
|
z_size_t len);
|
|
1749
1867
|
/*
|
|
1750
|
-
Same as crc32(), but with a size_t length.
|
|
1868
|
+
Same as crc32(), but with a size_t length. Note that a long is 32 bits on
|
|
1869
|
+
Windows.
|
|
1751
1870
|
*/
|
|
1752
1871
|
|
|
1753
1872
|
/*
|
|
@@ -1757,14 +1876,14 @@ ZEXTERN uLong ZEXPORT crc32_combine(uLong crc1, uLong crc2, z_off_t len2);
|
|
|
1757
1876
|
seq1 and seq2 with lengths len1 and len2, CRC-32 check values were
|
|
1758
1877
|
calculated for each, crc1 and crc2. crc32_combine() returns the CRC-32
|
|
1759
1878
|
check value of seq1 and seq2 concatenated, requiring only crc1, crc2, and
|
|
1760
|
-
len2. len2 must be non-negative.
|
|
1879
|
+
len2. len2 must be non-negative, otherwise zero is returned.
|
|
1761
1880
|
*/
|
|
1762
1881
|
|
|
1763
1882
|
/*
|
|
1764
1883
|
ZEXTERN uLong ZEXPORT crc32_combine_gen(z_off_t len2);
|
|
1765
1884
|
|
|
1766
1885
|
Return the operator corresponding to length len2, to be used with
|
|
1767
|
-
crc32_combine_op(). len2 must be non-negative.
|
|
1886
|
+
crc32_combine_op(). len2 must be non-negative, otherwise zero is returned.
|
|
1768
1887
|
*/
|
|
1769
1888
|
|
|
1770
1889
|
ZEXTERN uLong ZEXPORT crc32_combine_op(uLong crc1, uLong crc2, uLong op);
|
|
@@ -1917,9 +2036,9 @@ ZEXTERN int ZEXPORT gzgetc_(gzFile file); /* backward compatibility */
|
|
|
1917
2036
|
ZEXTERN z_off_t ZEXPORT gzseek64(gzFile, z_off_t, int);
|
|
1918
2037
|
ZEXTERN z_off_t ZEXPORT gztell64(gzFile);
|
|
1919
2038
|
ZEXTERN z_off_t ZEXPORT gzoffset64(gzFile);
|
|
1920
|
-
ZEXTERN uLong ZEXPORT adler32_combine64(uLong, uLong,
|
|
1921
|
-
ZEXTERN uLong ZEXPORT crc32_combine64(uLong, uLong,
|
|
1922
|
-
ZEXTERN uLong ZEXPORT crc32_combine_gen64(
|
|
2039
|
+
ZEXTERN uLong ZEXPORT adler32_combine64(uLong, uLong, z_off64_t);
|
|
2040
|
+
ZEXTERN uLong ZEXPORT crc32_combine64(uLong, uLong, z_off64_t);
|
|
2041
|
+
ZEXTERN uLong ZEXPORT crc32_combine_gen64(z_off64_t);
|
|
1923
2042
|
# endif
|
|
1924
2043
|
#else
|
|
1925
2044
|
ZEXTERN gzFile ZEXPORT gzopen(const char *, const char *);
|