From feaeae991d13b7adaa388193b28ed1b3d1953325 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Feb 02 2021 09:31:08 +0000 Subject: import zlib-1.2.7-19.el7_9 --- diff --git a/SOURCES/zlib-1.2.7-fix-access-password-protected-files-libminizip.patch b/SOURCES/zlib-1.2.7-fix-access-password-protected-files-libminizip.patch new file mode 100644 index 0000000..babaa6f --- /dev/null +++ b/SOURCES/zlib-1.2.7-fix-access-password-protected-files-libminizip.patch @@ -0,0 +1,78 @@ +Subject: [PATCH] Fix types in contrib/minizip to match result of + get_crc_table(). + +--- + contrib/minizip/crypt.h | 8 ++++---- + contrib/minizip/unzip.c | 2 +- + contrib/minizip/zip.c | 2 +- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/contrib/minizip/crypt.h b/contrib/minizip/crypt.h +index a01d08d..1e9e820 100644 +--- a/contrib/minizip/crypt.h ++++ b/contrib/minizip/crypt.h +@@ -32,7 +32,7 @@ + /*********************************************************************** + * Return the next byte in the pseudo-random sequence + */ +-static int decrypt_byte(unsigned long* pkeys, const unsigned long* pcrc_32_tab) ++static int decrypt_byte(unsigned long* pkeys, const z_crc_t* pcrc_32_tab) + { + unsigned temp; /* POTENTIAL BUG: temp*(temp^1) may overflow in an + * unpredictable manner on 16-bit systems; not a problem +@@ -45,7 +45,7 @@ static int decrypt_byte(unsigned long* pkeys, const unsigned long* pcrc_32_tab) + /*********************************************************************** + * Update the encryption keys with the next byte of plain text + */ +-static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int c) ++static int update_keys(unsigned long* pkeys,const z_crc_t* pcrc_32_tab,int c) + { + (*(pkeys+0)) = CRC32((*(pkeys+0)), c); + (*(pkeys+1)) += (*(pkeys+0)) & 0xff; +@@ -62,7 +62,7 @@ static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int + * Initialize the encryption keys and the random header according to + * the given password. + */ +-static void init_keys(const char* passwd,unsigned long* pkeys,const unsigned long* pcrc_32_tab) ++static void init_keys(const char* passwd,unsigned long* pkeys,const z_crc_t* pcrc_32_tab) + { + *(pkeys+0) = 305419896L; + *(pkeys+1) = 591751049L; +@@ -91,7 +91,7 @@ static int crypthead(const char* passwd, /* password string */ + unsigned char* buf, /* where to write header */ + int bufSize, + unsigned long* pkeys, +- const unsigned long* pcrc_32_tab, ++ const z_crc_t* pcrc_32_tab, + unsigned long crcForCrypting) + { + int n; /* index in random header */ +diff --git a/contrib/minizip/unzip.c b/contrib/minizip/unzip.c +index c160cd0..8499efd 100644 +--- a/contrib/minizip/unzip.c ++++ b/contrib/minizip/unzip.c +@@ -184,7 +184,7 @@ typedef struct + + # ifndef NOUNCRYPT + unsigned long keys[3]; /* keys defining the pseudo-random sequence */ +- const unsigned long* pcrc_32_tab; ++ const z_crc_t* pcrc_32_tab; + # endif + } unz64_s; + +diff --git a/contrib/minizip/zip.c b/contrib/minizip/zip.c +index 147934c..ea54853 100644 +--- a/contrib/minizip/zip.c ++++ b/contrib/minizip/zip.c +@@ -157,7 +157,7 @@ typedef struct + ZPOS64_T totalUncompressedData; + #ifndef NOCRYPT + unsigned long keys[3]; /* keys defining the pseudo-random sequence */ +- const unsigned long* pcrc_32_tab; ++ const z_crc_t* pcrc_32_tab; + int crypt_header_size; + #endif + } curfile64_info; +-- +2.26.0 + diff --git a/SPECS/zlib.spec b/SPECS/zlib.spec index 2930fc9..900d5aa 100644 --- a/SPECS/zlib.spec +++ b/SPECS/zlib.spec @@ -1,7 +1,7 @@ Summary: The compression and decompression library Name: zlib Version: 1.2.7 -Release: 18%{?dist} +Release: 19%{?dist} # /contrib/dotzlib/ have Boost license License: zlib and Boost Group: System Environment/Libraries @@ -17,6 +17,8 @@ Patch2: zlib-1.2.7-z-block-flush.patch Patch3: zlib-1.2.7-fix-serious-but-very-rare-decompression-bug-in-inftr.patch # resolves: #1337441 Patch4: zlib-1.2.7-Fix-bug-where-gzopen-gzclose-would-write-an-empty-fi.patch +# resolves: #1875700 +Patch5: zlib-1.2.7-fix-access-password-protected-files-libminizip.patch BuildRequires: automake, autoconf, libtool @@ -75,6 +77,7 @@ mv ChangeLog.tmp ChangeLog %patch3 -p1 %patch4 -p1 +%patch5 -p1 %build %ifarch ppc64 ppc64le @@ -138,6 +141,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %{_libdir}/pkgconfig/minizip.pc %changelog +* Wed Sep 09 2020 Ondrej Dubaj - 1.2.7-19 +- fixed accessing password-protected .zip files via libminizip (#1875700) + * Mon Jul 09 2018 Pavel Raiskup - 1.2.7-18 - Link with -z now for full RELRO