commit:     021483c2d2bf73557d74ce0b90aafffe366e02b4
Author:     Karlson2k (Evgeny Grin) <k2k <AT> narod <DOT> ru>
AuthorDate: Wed Apr 20 19:35:31 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Apr 20 20:14:39 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=021483c2

net-misc/curl: fixed "out of memory error" in 7.82.0

Closes: https://bugs.gentoo.org/836629

Signed-off-by: Karlson2k (Evgeny Grin) <k2k <AT> narod.ru>
Closes: https://github.com/gentoo/gentoo/pull/25133
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...curl-7.82.0-r1.ebuild => curl-7.82.0-r2.ebuild} |  1 +
 .../curl/files/curl-7.82.0-certs-processing.patch  | 27 ++++++++++++++++++++++
 2 files changed, 28 insertions(+)

diff --git a/net-misc/curl/curl-7.82.0-r1.ebuild 
b/net-misc/curl/curl-7.82.0-r2.ebuild
similarity index 99%
rename from net-misc/curl/curl-7.82.0-r1.ebuild
rename to net-misc/curl/curl-7.82.0-r2.ebuild
index 9b955edd99ac..1697033eb0d2 100644
--- a/net-misc/curl/curl-7.82.0-r1.ebuild
+++ b/net-misc/curl/curl-7.82.0-r2.ebuild
@@ -93,6 +93,7 @@ MULTILIB_CHOST_TOOLS=(
 PATCHES=(
        "${FILESDIR}"/${PN}-7.30.0-prefix.patch
        "${FILESDIR}"/${PN}-respect-cflags-3.patch
+       "${FILESDIR}"/${P}-certs-processing.patch
 )
 
 src_prepare() {

diff --git a/net-misc/curl/files/curl-7.82.0-certs-processing.patch 
b/net-misc/curl/files/curl-7.82.0-certs-processing.patch
new file mode 100644
index 000000000000..a62c1df20b30
--- /dev/null
+++ b/net-misc/curl/files/curl-7.82.0-certs-processing.patch
@@ -0,0 +1,27 @@
+https://github.com/curl/curl/issues/8559
+https://bugs.gentoo.org/836629
+
+From 911714d617c106ed5d553bf003e34ec94ab6a136 Mon Sep 17 00:00:00 2001
+From: Daniel Stenberg <[email protected]>
+Date: Tue, 8 Mar 2022 13:38:13 +0100
+Subject: [PATCH] openssl: fix CN check error code
+
+Due to a missing 'else' this returns error too easily.
+
+Regressed in: d15692ebb
+
+Reported-by: Kristoffer Gleditsch
+Fixes #8559
+Closes #8560
+--- a/lib/vtls/openssl.c
++++ b/lib/vtls/openssl.c
+@@ -1817,7 +1817,8 @@ CURLcode Curl_ossl_verifyhost(struct Curl_easy *data, 
struct connectdata *conn,
+               memcpy(peer_CN, ASN1_STRING_get0_data(tmp), peerlen);
+               peer_CN[peerlen] = '\0';
+             }
+-            result = CURLE_OUT_OF_MEMORY;
++            else
++              result = CURLE_OUT_OF_MEMORY;
+           }
+         }
+         else /* not a UTF8 name */

Reply via email to