summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross@burtonini.com>2021-12-20 15:23:42 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-12-21 12:01:03 +0000
commit2b5e9cfd2c1914d606725029c59cd50cca3d5511 (patch)
tree71fa64d0672a587e9ba1cd1a7ba41c06198ef618
parent5b5c1cd43923e552ae6bcfc50f1766981c44ae7b (diff)
downloadopenembedded-core-contrib-2b5e9cfd2c1914d606725029c59cd50cca3d5511.tar.gz
python3: backport a fix so the test suite passes with OpenSSL 3.0.1
The test suite makes incorrect assumptions about OpenSSL versions post- 3.0, so backport the fix for the test suite. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/python/python3/0001-bpo-46114-Fix-OpenSSL-version-check-for-3.0.1-GH-301.patch60
-rw-r--r--meta/recipes-devtools/python/python3_3.10.1.bb1
2 files changed, 61 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python3/0001-bpo-46114-Fix-OpenSSL-version-check-for-3.0.1-GH-301.patch b/meta/recipes-devtools/python/python3/0001-bpo-46114-Fix-OpenSSL-version-check-for-3.0.1-GH-301.patch
new file mode 100644
index 0000000000..6f4ceae188
--- /dev/null
+++ b/meta/recipes-devtools/python/python3/0001-bpo-46114-Fix-OpenSSL-version-check-for-3.0.1-GH-301.patch
@@ -0,0 +1,60 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 251d2eadc7f5b4042245709f41c38169a284e146 Mon Sep 17 00:00:00 2001
+From: "Miss Islington (bot)"
+ <31488909+miss-islington@users.noreply.github.com>
+Date: Fri, 17 Dec 2021 07:38:11 -0800
+Subject: [PATCH] bpo-46114: Fix OpenSSL version check for 3.0.1 (GH-30170)
+
+(cherry picked from commit 2985feac4e02d590bb78bcce9e30864be53280ac)
+
+Co-authored-by: Christian Heimes <christian@python.org>
+---
+ .github/workflows/build.yml | 2 +-
+ Lib/test/test_ssl.py | 6 +++++-
+ .../next/Tests/2021-12-17-14-46-19.bpo-46114.9iyZ_9.rst | 1 +
+ Tools/ssl/multissltests.py | 2 +-
+ 4 files changed, 8 insertions(+), 3 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Tests/2021-12-17-14-46-19.bpo-46114.9iyZ_9.rst
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index a485f7d4c3..873db6403d 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -539,7 +539,11 @@ def test_openssl_version(self):
+ self.assertLessEqual(status, 15)
+
+ libressl_ver = f"LibreSSL {major:d}"
+- openssl_ver = f"OpenSSL {major:d}.{minor:d}.{fix:d}"
++ if major >= 3:
++ # 3.x uses 0xMNN00PP0L
++ openssl_ver = f"OpenSSL {major:d}.{minor:d}.{patch:d}"
++ else:
++ openssl_ver = f"OpenSSL {major:d}.{minor:d}.{fix:d}"
+ self.assertTrue(
+ s.startswith((openssl_ver, libressl_ver)),
+ (s, t, hex(n))
+diff --git a/Misc/NEWS.d/next/Tests/2021-12-17-14-46-19.bpo-46114.9iyZ_9.rst b/Misc/NEWS.d/next/Tests/2021-12-17-14-46-19.bpo-46114.9iyZ_9.rst
+new file mode 100644
+index 0000000000..6878cea032
+--- /dev/null
++++ b/Misc/NEWS.d/next/Tests/2021-12-17-14-46-19.bpo-46114.9iyZ_9.rst
+@@ -0,0 +1 @@
++Fix test case for OpenSSL 3.0.1 version. OpenSSL 3.0 uses ``0xMNN00PP0L``.
+diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
+index ba2663e9a3..8fe5b5d0c2 100755
+--- a/Tools/ssl/multissltests.py
++++ b/Tools/ssl/multissltests.py
+@@ -48,7 +48,7 @@
+
+ OPENSSL_RECENT_VERSIONS = [
+ "1.1.1l",
+- "3.0.0"
++ "3.0.1"
+ ]
+
+ LIBRESSL_OLD_VERSIONS = [
+--
+2.25.1
+
diff --git a/meta/recipes-devtools/python/python3_3.10.1.bb b/meta/recipes-devtools/python/python3_3.10.1.bb
index 6115ffe5b3..e7ae687177 100644
--- a/meta/recipes-devtools/python/python3_3.10.1.bb
+++ b/meta/recipes-devtools/python/python3_3.10.1.bb
@@ -33,6 +33,7 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
file://makerace.patch \
file://0001-sysconfig.py-use-platlibdir-also-for-purelib.patch \
file://0001-Lib-pty.py-handle-stdin-I-O-errors-same-way-as-maste.patch \
+ file://0001-bpo-46114-Fix-OpenSSL-version-check-for-3.0.1-GH-301.patch \
"
SRC_URI:append:class-native = " \