| Commit message (Collapse) | Author | Files | Lines | ||
|---|---|---|---|---|---|
| 9 hours | Fix links to Mark Nelson's zlib article, now hosted on zlib.net. | Mark Adler | 4 | -3/+3 | |
| 9 hours | Use atomics to build inflate fixed tables once. | Mark Adler | 13 | -345/+309 | |
| This moves the once code from crc32.c to zutil.c, and uses it also for building the inflate fixed tables when BUILDFIXED is defined. The fixed tables are now housed in inftrees.c, shared by inflate.c and infback.c. The once() function is now external, and so is renamed to z_once() to avoid name collisions. If either BUILDFIXED or DYNAMIC_CRC_TABLE is defined, and atomics are not available, then a warning is issued noting that zlib is not thread-safe. | |||||
| 9 hours | Add compressBound_z and deflateBound_z functions for large values. | Mark Adler | 15 | -15/+89 | |
| These take and return size_t integers, instead of unsigned longs, for those platforms with 32-bit longs. This commit also assures that overflows of either integer type results in the maximum value for that type, instead of wrapping to small values. | |||||
| 9 hours | Prevent the use of insecure functions without an explicit request. | Mark Adler | 5 | -42/+95 | |
| ZLIB_INSECURE must be defined in order to compile code that uses the insecure functions vsprintf() or sprintf(). This would occur only if the standard vsnprintf() or snprintf() functions are not available. Providing the --insecure option to ./configure will define ZLIB_INSECURE. A flag is added to zlibCompileFlags() to indicate that gzprintf() is not implemented due to the need for the use of an insecure function, but ZLIB_INSECURE was not defined. | |||||
| 9 hours | Update the link for an snprintf/vsnprintf implementation in FAQ. | Mark Adler | 1 | -2/+2 | |
| Point to a modern, well-supported implementation, for use when the compiler chain in use does not provide those functions, and a secure alternative to sprintf/vsprintf for the gz functions is desired. | |||||
| 9 hours | Copy only the initialized window contents in inflateCopy. | Mark Adler | 1 | -5/+2 | |
| To avoid the propagation and possible disclosure of uninitialized memory contents. | |||||
| 9 hours | Check for negative lengths in crc32_combine functions. | Mark Adler | 2 | -2/+6 | |
| Though zlib.h says that len2 must be non-negative, this avoids the possibility of an accidental infinite loop. | |||||
| 2025-12-08 | zlib 1.3.1.2v1.3.1.2 | Mark Adler | 40 | -80/+103 | |
| Interim version for an audit. | |||||
| 2025-12-08 | Avoid mixed signedness compare in gzwrite.c. | Mark Adler | 1 | -1/+1 | |
| 2025-12-08 | Look for gcov in configure only if coverage was requested. | Mark Adler | 1 | -24/+26 | |
| 2025-12-08 | CMake: Repair macOS action. | Vollstrecker | 2 | -4/+28 | |
| 2025-12-08 | CMake: Repair Windows action. | Vollstrecker | 1 | -1/+1 | |
| 2025-12-08 | Support non-blocking devices in the gz* routines. | Mark Adler | 5 | -116/+276 | |
| 2025-12-06 | Update gz*.c copyright dates. | Mark Adler | 4 | -4/+4 | |
| 2025-12-06 | Return all available uncompressed data on error in gzread.c. | Mark Adler | 3 | -32/+49 | |
| The error is recorded, and will be detected by the application after all of the uncompressed data has been consumed and then one more call is made to read data. The error is available immediately from gzerror() if the application would like to know earlier. | |||||
| 2025-12-06 | Fix indentation in gzread.c. | Mark Adler | 1 | -3/+3 | |
| 2025-12-06 | Update links to the RFCs. | Mark Adler | 5 | -11/+11 | |
| 2025-12-06 | CMake: Fix typos in test/CMakeLists.txt. | Vollstrecker | 1 | -2/+2 | |
| 2025-12-06 | Clarify the use of inflateGetHeader(). | Mark Adler | 1 | -14/+16 | |
| 2025-12-06 | Remove redundant frees of point list on error in examples/zran.c. | Mark Adler | 2 | -21/+17 | |
| Also clean out the point list contents when freed, even though the structure itself is freed, in case someone tries to free it again. | |||||
| 2025-12-06 | Allow gzflush() to write empty gzip members. | Mark Adler | 1 | -2/+3 | |
| Before this, a gzflush() with Z_FINISH and no data to write would do nothing. Now it will write an empty gzip member. | |||||
| 2025-12-06 | Improve the discrimination between trailing garbage and bad gzip. | Mark Adler | 3 | -30/+37 | |
| This proceeds to try to decode whatever follows the last gzip member, and concludes that it is acceptable trailing garbage only if it results in a data error without decompressing any data. This commit also reduces the probability of a false-positive gzip header detection. | |||||
| 2025-12-06 | Add a "G" option to force gzip, disabling transparency in gzread(). | Mark Adler | 3 | -5/+31 | |
| If the input is not a gzip stream with this option, an error will be returned. | |||||
| 2025-05-13 | Fix bug in inflatePrime() for 16-bit ints. | Mark Adler | 2 | -10/+21 | |
| Also elaborate on the inflatePrime() error return in zlib.h, and assure that data_type is correct after initialization and a Z_NEED_DICT return. | |||||
| 2025-05-13 | Correct Visual Studio readme.txt. | skydvr | 1 | -2/+2 | |
| 2025-05-13 | Constrain line lengths in inflate code. | Mark Adler | 3 | -12/+22 | |
| 2025-05-13 | Note the use of gzungetc() to run a deferred seek while reading. | Mark Adler | 1 | -0/+5 | |
| 2025-05-13 | Note that gzseek() requests are deferred until the next operation. | Mark Adler | 1 | -1/+2 | |
| 2025-02-25 | Clarify the use of errnum in gzerror(). | Mark Adler | 1 | -3/+4 | |
| 2025-02-25 | Have gz_skip() update how far it got for later continuation. | Mark Adler | 4 | -76/+46 | |
| This also simplifies seek processing in general. | |||||
| 2025-02-23 | Avoid a fruitless memory copy in gzread.c. | Mark Adler | 1 | -4/+6 | |
| 2025-02-21 | Remove some unsightly spaces in zlib.h. | Mark Adler | 1 | -3/+3 | |
| 2025-02-18 | Use generated zconf.h in cmake build. | Vollstrecker | 3 | -7/+14 | |
| This restores the inclusion of the local zconf.h (double quoted) in normal usage. | |||||
| 2025-02-13 | Check that HAVE_UNISTD_H and HAVE_STDARG_H are not defined as 0. | Mark Adler | 3 | -6/+6 | |
| 2025-02-13 | Do not look for zconf.h in the source directory. | Vollstrecker | 1 | -1/+1 | |
| Temporary patch for cmake, but too violent. A better solution will need to be found. | |||||
| 2025-02-06 | Use zconf.h instead of zconf.h.in for cmake. | Mark Adler | 1 | -2/+2 | |
| 2025-02-06 | Repair MinGW cmake build. | Vollstrecker | 3 | -10/+2 | |
| 2025-02-05 | Fix Ada bindings on x64. | spectralio | 1 | -1/+2 | |
| 2025-02-05 | Restore zconf.h to distribution. | Mark Adler | 3 | -5/+551 | |
| 2025-02-02 | Revert previous commit, restoring the memcpy() call. | Mark Adler | 1 | -3/+3 | |
| The reported issue was due to an error in their test code, not in inflate. This use of memcpy() in inflate is correct. | |||||
| 2025-02-01 | Avoid use of memcpy() in inflate when areas can overlap. | Mark Adler | 1 | -3/+3 | |
| 2025-01-31 | Update Makefile to not recreate zconf.h and zconf.h.cmakein. | Mark Adler | 2 | -11/+12 | |
| Both were removed as zconf.h.cmakein is no longer needed, and zconf.h is made from zconf.h.in. | |||||
| 2025-01-31 | CMake: Make USE_FILE32API part of the interface. | Vollstrecker | 1 | -12/+8 | |
| 2025-01-31 | CMake: Give minizip a suffix on Cygwin as well. | Vollstrecker | 2 | -3/+4 | |
| 2025-01-31 | CMake: Disable minizip on Cygwin. | Vollstrecker | 1 | -2/+1 | |
| 2025-01-31 | CMake: Correct workflow line continuation. | Vollstrecker | 1 | -1/+1 | |
| 2025-01-31 | CMake: Clean up spaces in required versions. | Vollstrecker | 8 | -8/+8 | |
| 2025-01-31 | CMake: Correct workflow options to disable bzip2 on Windows. | Vollstrecker | 1 | -4/+2 | |
| Note that Vollstrecker hates yaml. | |||||
| 2025-01-31 | CMake: Add the tested version of cmake (3.31). | Vollstrecker | 8 | -8/+8 | |
| Per @ClausKlein suggestion. | |||||
| 2025-01-31 | CMake: Do not test with bzip2 on Windows or Cygwin. | Vollstrecker | 2 | -5/+12 | |
