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 <odubaj@redhat.com> - 1.2.7-19
+- fixed accessing password-protected .zip files via libminizip (#1875700)
+
 * Mon Jul 09 2018 Pavel Raiskup <praiskup@redhat.com> - 1.2.7-18
 - Link with -z now for full RELRO