commit:     3fba530b2684f515d1da5f8e0baa1116a3e29f5a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri May 26 09:06:58 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri May 26 09:35:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3fba530b

www-servers/apache: fix build w/ rustls-ffi-0.10.0

Closes: https://bugs.gentoo.org/906523
Signed-off-by: Sam James <sam <AT> gentoo.org>

 www-servers/apache/apache-2.4.57.ebuild            |  3 +-
 .../files/apache-2.4.57-rustls-ffi-0.10.0.patch    | 51 ++++++++++++++++++++++
 2 files changed, 53 insertions(+), 1 deletion(-)

diff --git a/www-servers/apache/apache-2.4.57.ebuild 
b/www-servers/apache/apache-2.4.57.ebuild
index be1f9d9f9ca6..6b8092bd3916 100644
--- a/www-servers/apache/apache-2.4.57.ebuild
+++ b/www-servers/apache/apache-2.4.57.ebuild
@@ -149,10 +149,11 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong 
~mips ~ppc ~ppc64 ~riscv
 PATCHES=(
        "${FILESDIR}"/${PN}-2.4.54-no-which.patch # bug #844868
        "${FILESDIR}"/${PN}-2.4.54-libtool.patch # bug #858836
+       "${FILESDIR}"/${P}-rustls-ffi-0.10.0.patch # bug #906523
 )
 
 pkg_setup() {
-       # dependend critical modules which are not allowed in global scope due
+       # dependent critical modules which are not allowed in global scope due
        # to USE flag conditionals (bug #499260)
        use ssl && MODULE_CRITICAL+=" socache_shmcb"
        use doc && MODULE_CRITICAL+=" alias negotiation setenvif"

diff --git a/www-servers/apache/files/apache-2.4.57-rustls-ffi-0.10.0.patch 
b/www-servers/apache/files/apache-2.4.57-rustls-ffi-0.10.0.patch
new file mode 100644
index 000000000000..81869f7bbf00
--- /dev/null
+++ b/www-servers/apache/files/apache-2.4.57-rustls-ffi-0.10.0.patch
@@ -0,0 +1,51 @@
+https://github.com/apache/httpd/commit/0495a95f511c0bc7f34dc1b706d6d8276865743b
+https://bugs.gentoo.org/906523
+
+From 0495a95f511c0bc7f34dc1b706d6d8276865743b Mon Sep 17 00:00:00 2001
+From: Stefan Eissing <[email protected]>
+Date: Tue, 2 May 2023 09:21:07 +0000
+Subject: [PATCH] Backport of r1909558 from trunk:
+
+  *) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
+     Checking in configure for proper version installed. Code
+     fixes for changed clienthello member name.
+
+
+
+git-svn-id: 
https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1909561 
13f79535-47bb-0310-9956-ffa450edef68
+--- /dev/null
++++ b/changes-entries/tls-rustls-update.txt
+@@ -0,0 +1,4 @@
++  *) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
++     Checking in configure for proper version installed. Code
++     fixes for changed clienthello member name.
++     [Stefan Eissing]
+\ No newline at end of file
+--- a/modules/tls/config2.m4
++++ b/modules/tls/config2.m4
+@@ -109,9 +109,10 @@ AC_DEFUN([APACHE_CHECK_RUSTLS],[
+       fi
+     fi
+ 
+-    AC_MSG_CHECKING([for rustls version >= 0.8.2])
++    AC_MSG_CHECKING([for rustls version >= 0.9.2])
+     AC_TRY_COMPILE([#include <rustls.h>],[
+ rustls_version();
++rustls_acceptor_new();
+ ],
+       [AC_MSG_RESULT(OK)
+        ac_cv_rustls=yes],
+--- a/modules/tls/tls_core.c
++++ b/modules/tls/tls_core.c
+@@ -507,8 +507,8 @@ static const rustls_certified_key 
*extract_client_hello_values(
+     ap_log_cerror(APLOG_MARK, APLOG_TRACE2, 0, c, "extract client hello 
values");
+     if (!cc) goto cleanup;
+     cc->client_hello_seen = 1;
+-    if (hello->sni_name.len > 0) {
+-        cc->sni_hostname = apr_pstrndup(c->pool, hello->sni_name.data, 
hello->sni_name.len);
++    if (hello->server_name.len > 0) {
++        cc->sni_hostname = apr_pstrndup(c->pool, hello->server_name.data, 
hello->server_name.len);
+         ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, c, "sni detected: %s", 
cc->sni_hostname);
+     }
+     else {
+

Reply via email to