From e8b72fc7f3937b6b86354110917da161ca36cff7 Mon Sep 17 00:00:00 2001 From: Ned Deily <nad@python.org> Date: Tue, 15 Mar 2022 16:53:48 -0400 Subject: [PATCH] [3.8] bpo-47024: Update Windows builds and macOS installer build to use OpenSSL 1.1.1n. (GH-31912) * bpo-47024: Update Windows builds and macOS installer build to use OpenSSL 1.1.1n. * Revert inadvertent sqlite downgrade --- .azure-pipelines/ci.yml | 4 +- .azure-pipelines/pr.yml | 4 +- .github/workflows/build.yml | 2 +- .github/workflows/coverage.yml | 2 +- ...allows-to-build-on-releases-before-Y.patch | 59 ------------------- Mac/BuildScript/build-installer.py | 7 +-- .../2022-03-15-11-53-10.bpo-47024.p3PjRy.rst | 1 + PCbuild/get_externals.bat | 4 +- PCbuild/python.props | 4 +- Tools/ssl/multissltests.py | 4 +- 10 files changed, 16 insertions(+), 75 deletions(-) delete mode 100644 Mac/BuildScript/0001-Darwin-platform-allows-to-build-on-releases-before-Y.patch create mode 100644 Misc/NEWS.d/next/Build/2022-03-15-11-53-10.bpo-47024.p3PjRy.rst diff --git a/.azure-pipelines/ci.yml b/.azure-pipelines/ci.yml index 2284a5fb36b..d0efa77f930 100644 --- a/.azure-pipelines/ci.yml +++ b/.azure-pipelines/ci.yml @@ -57,7 +57,7 @@ jobs: variables: testRunTitle: '$(build.sourceBranchName)-linux' testRunPlatform: linux - openssl_version: 1.1.1l + openssl_version: 1.1.1n steps: - template: ./posix-steps.yml @@ -83,7 +83,7 @@ jobs: variables: testRunTitle: '$(Build.SourceBranchName)-linux-coverage' testRunPlatform: linux-coverage - openssl_version: 1.1.1l + openssl_version: 1.1.1n steps: - template: ./posix-steps.yml diff --git a/.azure-pipelines/pr.yml b/.azure-pipelines/pr.yml index 1a3bf75ed4c..a4f32460c7e 100644 --- a/.azure-pipelines/pr.yml +++ b/.azure-pipelines/pr.yml @@ -57,7 +57,7 @@ jobs: variables: testRunTitle: '$(system.pullRequest.TargetBranch)-linux' testRunPlatform: linux - openssl_version: 1.1.1l + openssl_version: 1.1.1n steps: - template: ./posix-steps.yml @@ -83,7 +83,7 @@ jobs: variables: testRunTitle: '$(Build.SourceBranchName)-linux-coverage' testRunPlatform: linux-coverage - openssl_version: 1.1.1l + openssl_version: 1.1.1n steps: - template: ./posix-steps.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 88aa37d4318..5c8f6f27b7d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -143,7 +143,7 @@ jobs: needs: check_source if: needs.check_source.outputs.run_tests == 'true' env: - OPENSSL_VER: 1.1.1l + OPENSSL_VER: 1.1.1n steps: - uses: actions/checkout@v2 - name: Install Dependencies diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 5ec2e526ab8..762cdb5ab21 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -23,7 +23,7 @@ jobs: name: 'Ubuntu (Coverage)' runs-on: ubuntu-latest env: - OPENSSL_VER: 1.1.1k + OPENSSL_VER: 1.1.1n steps: - uses: actions/checkout@v2 - name: Install Dependencies diff --git a/Mac/BuildScript/0001-Darwin-platform-allows-to-build-on-releases-before-Y.patch b/Mac/BuildScript/0001-Darwin-platform-allows-to-build-on-releases-before-Y.patch deleted file mode 100644 index 51ccdc2267e..00000000000 --- a/Mac/BuildScript/0001-Darwin-platform-allows-to-build-on-releases-before-Y.patch +++ /dev/null @@ -1,59 +0,0 @@ -From cef404f1e7a598166cbc2fd2e0048f7e2d752ad5 Mon Sep 17 00:00:00 2001 -From: David Carlier <devnexen@gmail.com> -Date: Tue, 24 Aug 2021 22:40:14 +0100 -Subject: [PATCH] Darwin platform allows to build on releases before - Yosemite/ios 8. - -issue #16407 #16408 ---- - crypto/rand/rand_unix.c | 5 +---- - include/crypto/rand.h | 10 ++++++++++ - 2 files changed, 11 insertions(+), 4 deletions(-) - -diff --git a/crypto/rand/rand_unix.c b/crypto/rand/rand_unix.c -index 43f1069d15..0f4525106a 100644 ---- a/crypto/rand/rand_unix.c -+++ b/crypto/rand/rand_unix.c -@@ -34,9 +34,6 @@ - #if defined(__OpenBSD__) - # include <sys/param.h> - #endif --#if defined(__APPLE__) --# include <CommonCrypto/CommonRandom.h> --#endif - - #if defined(OPENSSL_SYS_UNIX) || defined(__DJGPP__) - # include <sys/types.h> -@@ -381,7 +378,7 @@ static ssize_t syscall_random(void *buf, size_t buflen) - if (errno != ENOSYS) - return -1; - } --# elif defined(__APPLE__) -+# elif defined(OPENSSL_APPLE_CRYPTO_RANDOM) - if (CCRandomGenerateBytes(buf, buflen) == kCCSuccess) - return (ssize_t)buflen; - -diff --git a/include/crypto/rand.h b/include/crypto/rand.h -index 5350d3a931..674f840fd1 100644 ---- a/include/crypto/rand.h -+++ b/include/crypto/rand.h -@@ -20,6 +20,16 @@ - - # include <openssl/rand.h> - -+# if defined(__APPLE__) && !defined(OPENSSL_NO_APPLE_CRYPTO_RANDOM) -+# include <Availability.h> -+# if (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000) || \ -+ (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 80000) -+# define OPENSSL_APPLE_CRYPTO_RANDOM 1 -+# include <CommonCrypto/CommonCryptoError.h> -+# include <CommonCrypto/CommonRandom.h> -+# endif -+# endif -+ - /* forward declaration */ - typedef struct rand_pool_st RAND_POOL; - --- -2.33.0 - diff --git a/Mac/BuildScript/build-installer.py b/Mac/BuildScript/build-installer.py index db25eb89062..74c2c517d0e 100755 --- a/Mac/BuildScript/build-installer.py +++ b/Mac/BuildScript/build-installer.py @@ -242,10 +242,9 @@ def library_recipes(): result.extend([ dict( - name="OpenSSL 1.1.1l", - url="https://www.openssl.org/source/openssl-1.1.1l.tar.gz", - checksum='ac0d4387f3ba0ad741b0580dd45f6ff3', - patches=['0001-Darwin-platform-allows-to-build-on-releases-before-Y.patch'], + name="OpenSSL 1.1.1n", + url="https://www.openssl.org/source/openssl-1.1.1n.tar.gz", + checksum='2aad5635f9bb338bc2c6b7d19cbc9676', buildrecipe=build_universal_openssl, configure=None, install=None, diff --git a/Misc/NEWS.d/next/Build/2022-03-15-11-53-10.bpo-47024.p3PjRy.rst b/Misc/NEWS.d/next/Build/2022-03-15-11-53-10.bpo-47024.p3PjRy.rst new file mode 100644 index 00000000000..235ece3c3d2 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2022-03-15-11-53-10.bpo-47024.p3PjRy.rst @@ -0,0 +1 @@ +Update Windows builds and macOS installer build to use OpenSSL 1.1.1n. diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 2eff5e0bd0a..e0183bf250a 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -53,7 +53,7 @@ echo.Fetching external libraries... set libraries= set libraries=%libraries% bzip2-1.0.8 if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.3.0 -if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-1.1.1l +if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-1.1.1n set libraries=%libraries% sqlite-3.35.5.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.9.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.9.0 @@ -77,7 +77,7 @@ echo.Fetching external binaries... set binaries= if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.3.0 -if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-1.1.1l +if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-1.1.1n if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.9.0 if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06 diff --git a/PCbuild/python.props b/PCbuild/python.props index 7dfcf8f8a25..ec33f3d60e9 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -62,8 +62,8 @@ <libffiDir>$(ExternalsDir)libffi-3.3.0\</libffiDir> <libffiOutDir>$(ExternalsDir)libffi-3.3.0\$(ArchName)\</libffiOutDir> <libffiIncludeDir>$(libffiOutDir)include</libffiIncludeDir> - <opensslDir>$(ExternalsDir)openssl-1.1.1l\</opensslDir> - <opensslOutDir>$(ExternalsDir)openssl-bin-1.1.1l\$(ArchName)\</opensslOutDir> + <opensslDir>$(ExternalsDir)openssl-1.1.1n\</opensslDir> + <opensslOutDir>$(ExternalsDir)openssl-bin-1.1.1n\$(ArchName)\</opensslOutDir> <opensslIncludeDir>$(opensslOutDir)include</opensslIncludeDir> <nasmDir>$(ExternalsDir)\nasm-2.11.06\</nasmDir> <zlibDir>$(ExternalsDir)\zlib-1.2.11\</zlibDir> diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py index 41d964ec3ff..0e010b1deee 100755 --- a/Tools/ssl/multissltests.py +++ b/Tools/ssl/multissltests.py @@ -49,8 +49,8 @@ ] OPENSSL_RECENT_VERSIONS = [ - "1.1.1l", - "3.0.0-beta1" + "1.1.1n", + "3.0.1" ] LIBRESSL_OLD_VERSIONS = [ -- GitLab