Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
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.6, drop EOL 3.2. Patch by Hugo van Kemenade.
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