]> code.ossystems Code Review - openembedded-core.git/commitdiff
python3: backport a fix so the test suite passes with OpenSSL 3.0.1
authorRoss Burton <ross@burtonini.com>
Mon, 20 Dec 2021 15:23:42 +0000 (15:23 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 21 Dec 2021 12:01:03 +0000 (12:01 +0000)
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>
meta/recipes-devtools/python/python3/0001-bpo-46114-Fix-OpenSSL-version-check-for-3.0.1-GH-301.patch [new file with mode: 0644]
meta/recipes-devtools/python/python3_3.10.1.bb

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 (file)
index 0000000..6f4ceae
--- /dev/null
@@ -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
+
index 6115ffe5b37d42e971d54e1d64ef6ae7aa8177d9..e7ae6871777e1a1b3c29b9b126310b1a4f6fd160 100644 (file)
@@ -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 = " \