From c4d0326724fdfe4c51650c03b674928a06c705e7 Mon Sep 17 00:00:00 2001
From: rockyautomation <rockyautomation@rockylinux.org>
Date: Mon, 30 Oct 2023 16:14:15 +0000
Subject: [PATCH] import zlib-1.2.11-26.el8

---
 .zlib.checksum                                |  1 +
 .zlib.metadata                                |  2 +-
 ...lows-of-zip-header-fields-in-minizip.patch | 39 +++++++++++++++++++
 SPECS/zlib.spec                               | 10 ++++-
 4 files changed, 50 insertions(+), 2 deletions(-)
 create mode 100644 .zlib.checksum
 create mode 100644 SOURCES/zlib-1.2.13-Reject-overflows-of-zip-header-fields-in-minizip.patch

diff --git a/.zlib.checksum b/.zlib.checksum
new file mode 100644
index 0000000..b55bdbe
--- /dev/null
+++ b/.zlib.checksum
@@ -0,0 +1 @@
+ed0b5b2b764c0c9d54eb4175fb669da2f6daed175d1dca0369c42890a9c90095
diff --git a/.zlib.metadata b/.zlib.metadata
index ef6f799..f4f2428 100644
--- a/.zlib.metadata
+++ b/.zlib.metadata
@@ -1 +1 @@
-b7f50ada138c7f93eb7eb1631efccd1d9f03a5e77b6c13c8b757017b2d462e19d2d3e01c50fad60a4ae1bc86d431f6f94c72c11ff410c25121e571953017cb67 SOURCES/zlib-1.2.11.tar.xz
+4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066 SOURCES/zlib-1.2.11.tar.xz
diff --git a/SOURCES/zlib-1.2.13-Reject-overflows-of-zip-header-fields-in-minizip.patch b/SOURCES/zlib-1.2.13-Reject-overflows-of-zip-header-fields-in-minizip.patch
new file mode 100644
index 0000000..35e3073
--- /dev/null
+++ b/SOURCES/zlib-1.2.13-Reject-overflows-of-zip-header-fields-in-minizip.patch
@@ -0,0 +1,39 @@
+From 73331a6a0481067628f065ffe87bb1d8f787d10c Mon Sep 17 00:00:00 2001
+From: Hans Wennborg <hans@chromium.org>
+Date: Fri, 18 Aug 2023 11:05:33 +0200
+Subject: [PATCH] Reject overflows of zip header fields in minizip.
+
+This checks the lengths of the file name, extra field, and comment
+that would be put in the zip headers, and rejects them if they are
+too long. They are each limited to 65535 bytes in length by the zip
+format. This also avoids possible buffer overflows if the provided
+fields are too long.
+---
+ contrib/minizip/zip.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/contrib/minizip/zip.c b/contrib/minizip/zip.c
+index 3d3d4ca..0446109 100644
+--- a/contrib/minizip/zip.c
++++ b/contrib/minizip/zip.c
+@@ -1043,6 +1043,17 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char* filename, c
+       return ZIP_PARAMERROR;
+ #endif
+ 
++    // The filename and comment length must fit in 16 bits.
++    if ((filename!=NULL) && (strlen(filename)>0xffff))
++        return ZIP_PARAMERROR;
++    if ((comment!=NULL) && (strlen(comment)>0xffff))
++        return ZIP_PARAMERROR;
++    // The extra field length must fit in 16 bits. If the member also requires
++    // a Zip64 extra block, that will also need to fit within that 16-bit
++    // length, but that will be checked for later.
++    if ((size_extrafield_local>0xffff) || (size_extrafield_global>0xffff))
++        return ZIP_PARAMERROR;
++
+     zi = (zip64_internal*)file;
+ 
+     if (zi->in_opened_file_inzip == 1)
+-- 
+2.41.0
+
diff --git a/SPECS/zlib.spec b/SPECS/zlib.spec
index cc8b2f3..790b97f 100644
--- a/SPECS/zlib.spec
+++ b/SPECS/zlib.spec
@@ -3,7 +3,7 @@
 
 Name:    zlib
 Version: 1.2.11
-Release: 25%{?dist}
+Release: 26%{?dist}
 Summary: The compression and decompression library
 # /contrib/dotzlib/ have Boost license
 License: zlib and Boost
@@ -61,6 +61,9 @@ Patch21: zlib-1.2.11-covscan-issues.patch
 # Resolves: #2193045
 Patch22: zlib-1.2.11-IBM-Z-hw-accelrated-deflate-fix-crash-deflateBound.patch
 
+# Upstream patch: https://github.com/madler/zlib/commit/73331a6a0481067628f065ffe87bb1d8f787d10c
+Patch23: zlib-1.2.13-Reject-overflows-of-zip-header-fields-in-minizip.patch
+
 BuildRequires: automake, autoconf, libtool
 
 %description
@@ -133,6 +136,7 @@ developing applications which use minizip.
 %patch20 -p1
 %patch21 -p1
 %patch22 -p1
+%patch23 -p1
 
 
 iconv -f iso-8859-2 -t utf-8 < ChangeLog > ChangeLog.tmp
@@ -213,6 +217,10 @@ find $RPM_BUILD_ROOT -name '*.la' -delete
 
 
 %changelog
+* Tue Oct 24 2023 Lukas Javorsky <ljavorsk@redhat.com> - 1.2.11-26
+- Applied upstream commit 73331a6a0481067628f065ffe87bb1d8f787d10c
+- Fixes: CVE-2023-45853
+
 * Tue May 16 2023 Lukas Javorsky <ljavorsk@redhat.com> - 1.2.11-25
 - Fix the Crash in zlib deflateBound() function on s390x
 - Resolves: BZ#2193045
-- 
GitLab