Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@ jobs:
# Keep 1.1.1w in our list despite it being upstream EOL and otherwise
# unsupported as it most resembles other 1.1.1-work-a-like ssl APIs
# supported by important vendors such as AWS-LC.
openssl_ver: [1.1.1w, 3.0.18, 3.2.6, 3.3.5, 3.4.3, 3.5.4]
openssl_ver: [1.1.1w, 3.0.18, 3.3.5, 3.4.3, 3.5.4, 3.6.0]
# See Tools/ssl/make_ssl_data.py for notes on adding a new version
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add support for OpenSSL 3.5, drop EOL 3.2. Patch by Hugo van Kemenade.
Comment thread
hugovk marked this conversation as resolved.
Outdated
2 changes: 1 addition & 1 deletion Modules/_ssl.c
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ static void _PySSLFixErrno(void) {
/* Include generated data (error codes) */
/* See Tools/ssl/make_ssl_data.py for notes on adding a new version. */
#if (OPENSSL_VERSION_NUMBER >= 0x30401000L)
#include "_ssl_data_35.h"
#include "_ssl_data_36.h"
#elif (OPENSSL_VERSION_NUMBER >= 0x30100000L)
#include "_ssl_data_340.h"
#elif (OPENSSL_VERSION_NUMBER >= 0x30000000L)
Expand Down
24 changes: 22 additions & 2 deletions Modules/_ssl_data_35.h → Modules/_ssl_data_36.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* File generated by Tools/ssl/make_ssl_data.py */
/* Generated on 2025-10-04T17:49:19.148321+00:00 */
/* Generated from Git commit openssl-3.5.4-0-gc1eeb9406 */
/* Generated on 2026-01-17T13:03:49.335767+00:00 */
/* Generated from Git commit openssl-3.6.0-0-g7b371d80d9 */

/* generated from args.lib2errnum */
static struct py_ssl_library_code library_codes[] = {
Expand Down Expand Up @@ -1863,6 +1863,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"NOT_KEK", 46, 123},
#endif
#ifdef CMS_R_NOT_KEM
{"NOT_KEM", ERR_LIB_CMS, CMS_R_NOT_KEM},
#else
{"NOT_KEM", 46, 197},
#endif
#ifdef CMS_R_NOT_KEY_AGREEMENT
{"NOT_KEY_AGREEMENT", ERR_LIB_CMS, CMS_R_NOT_KEY_AGREEMENT},
#else
Expand Down Expand Up @@ -2058,6 +2063,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"UNKNOWN_ID", 46, 150},
#endif
#ifdef CMS_R_UNKNOWN_KDF_ALGORITHM
{"UNKNOWN_KDF_ALGORITHM", ERR_LIB_CMS, CMS_R_UNKNOWN_KDF_ALGORITHM},
#else
{"UNKNOWN_KDF_ALGORITHM", 46, 198},
#endif
#ifdef CMS_R_UNSUPPORTED_COMPRESSION_ALGORITHM
{"UNSUPPORTED_COMPRESSION_ALGORITHM", ERR_LIB_CMS, CMS_R_UNSUPPORTED_COMPRESSION_ALGORITHM},
#else
Expand All @@ -2078,6 +2088,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"UNSUPPORTED_ENCRYPTION_TYPE", 46, 192},
#endif
#ifdef CMS_R_UNSUPPORTED_KDF_ALGORITHM
{"UNSUPPORTED_KDF_ALGORITHM", ERR_LIB_CMS, CMS_R_UNSUPPORTED_KDF_ALGORITHM},
#else
{"UNSUPPORTED_KDF_ALGORITHM", 46, 199},
#endif
#ifdef CMS_R_UNSUPPORTED_KEK_ALGORITHM
{"UNSUPPORTED_KEK_ALGORITHM", ERR_LIB_CMS, CMS_R_UNSUPPORTED_KEK_ALGORITHM},
#else
Expand Down Expand Up @@ -5763,6 +5778,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"PSS_SALTLEN_TOO_SMALL", 57, 172},
#endif
#ifdef PROV_R_REPEATED_PARAMETER
{"REPEATED_PARAMETER", ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER},
#else
{"REPEATED_PARAMETER", 57, 252},
#endif
#ifdef PROV_R_REQUEST_TOO_LARGE_FOR_DRBG
{"REQUEST_TOO_LARGE_FOR_DRBG", ERR_LIB_PROV, PROV_R_REQUEST_TOO_LARGE_FOR_DRBG},
#else
Expand Down
4 changes: 2 additions & 2 deletions Tools/ssl/make_ssl_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
git tag --list 'openssl-*'
git switch --detach openssl-3.4.1

After generating the definitions, compare the result with newest pre-existing file.
You can use a command like:
After generating the definitions, compare the result with the newest
pre-existing file. You can use a command like:

git diff --no-index Modules/_ssl_data_340.h Modules/_ssl_data_341.h

Expand Down
3 changes: 2 additions & 1 deletion Tools/ssl/multissltests.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,15 @@
OPENSSL_OLD_VERSIONS = [
"1.1.1w",
"3.1.8",
"3.2.6",
]

OPENSSL_RECENT_VERSIONS = [
"3.0.18",
"3.2.6",
"3.3.5",
"3.4.3",
"3.5.4",
"3.6.0",
# See make_ssl_data.py for notes on adding a new version.
]

Expand Down
Loading