From: Jaipaul Cheernam <jaipaul.cheernam@est.tech>
To: openembedded-core@lists.openembedded.org
Subject: [RFC v4 0/6] openssl: upgrade 3.5.7 -> 4.0.1
Date: Sat, 22 Aug 2026 19:51:54 +0200 [thread overview]
Message-ID: <20260822175200.57534-1-jaipaul.cheernam@est.tech> (raw)
In-Reply-To: <20260814051829.35088-1-jaipaul.cheernam@est.tech>
Upgrade OpenSSL from 3.5.7 to 4.0.1 and fix all dependent recipe
breakages in oe-core.
OpenSSL 4.0 is a major version bump that removes the ENGINE API,
removes the c_rehash script, makes ASN1_STRING fully opaque, adds
const qualifiers to X509 accessor return types, and removes
per-version TLS method functions.
This series fixes python3, socat, serf, u-boot, and kea to build
against OpenSSL 4.0.
Changes since v3:
- u-boot: fix malformed patch (hunk line count mismatch from pkcs11
modification). Regenerated patch properly.
Changes since v2:
- openssl: remove c_rehash from MULTILIB_SCRIPTS and FILES (fixes
multilib do_package failure)
- python3: add backports from CPython PR #149783 for the
got_eof_error fix (fixes test_https/test_https_sni ptest failures
caused by OpenSSL 4.0 changing EOF signaling behavior)
- u-boot: update Upstream-Status to lore link per reviewer feedback,
include doc/Dockerfile hunks from upstream v4, make pkcs11
provider loading optional (fixes fitimage signing failure when
pkcs11-provider is not installed)
Changes since v1:
- u-boot: move patch from u-boot-tools to u-boot-common.inc (fixes
riscv64 build failure)
- serf/socat: fix Upstream-Status tags
Testing:
- lib32-openssl do_package: passes (multilib fix verified)
- python3 test_https/test_https_sni: passes locally
- u-boot fitimage signing: passes locally
- bitbake world -k with meta-oe/meta-networking/meta-python/meta-perl:
oe-core recipes all build. meta-oe breakages are in their layer.
Known breakages in meta-openembedded (not addressed here):
- freediameter: RDEPENDS on removed openssl-engines package
- pkcs11-helper, krb5, libcoap, grpc, libnet-ssleay-perl, libesmtp,
unbound, wvstreams: various OpenSSL 4.0 API incompatibilities
Notes on upstream status:
- python3: CPython PR #149783 deferred until after Python 3.15.1
- socat: submitted to socat@dest-unreach.org
- serf: fix in trunk (r1935023), no release yet
- u-boot: v4 on ML under review
- kea: tracked as issue #4673
Jaipaul Cheernam (6):
openssl: upgrade 3.5.7 -> 4.0.1
python3: backport OpenSSL 4.0 support from upstream
socat: fix build with OpenSSL 4.0
serf: fix build with OpenSSL 4.0
u-boot: fix build with OpenSSL 4.0
kea: fix build with OpenSSL 4.0
...Add-support-for-OpenSSL-Provider-API.patch | 340 ++++++++++++++++
meta/recipes-bsp/u-boot/u-boot-common.inc | 1 +
...-qualifiers-to-OpenSSL-X509-pointers.patch | 49 +++
meta/recipes-connectivity/kea/kea_3.2.0.bb | 1 +
...ke-history-reporting-when-test-fails.patch | 366 ------------------
...1-Configure-do-not-tweak-mips-cflags.patch | 6 +-
...sysroot-and-debug-prefix-map-from-co.patch | 11 +-
.../0001-extend-check_cwm-test-timeout.patch | 4 +-
.../{openssl_3.5.7.bb => openssl_4.0.1.bb} | 28 +-
...penSSL-4.0-use-ASN1_STRING-accessors.patch | 31 ++
.../socat/socat_1.8.1.3.bb | 1 +
...146207-Add-support-for-OpenSSL-4.0.0.patch | 257 ++++++++++++
...Update-_ssl._SSLSocket-for-OpenSSL-4.patch | 234 +++++++++++
...utdown-test-in-test_ssl.test_got_eof.patch | 41 ++
.../recipes-devtools/python/python3_3.14.7.bb | 3 +
...penSSL-4.0-use-ASN1_STRING-accessors.patch | 35 ++
meta/recipes-support/serf/serf_1.3.10.bb | 1 +
17 files changed, 1012 insertions(+), 397 deletions(-)
create mode 100644 meta/recipes-bsp/u-boot/files/0001-Add-support-for-OpenSSL-Provider-API.patch
create mode 100644 meta/recipes-connectivity/kea/files/0001-Add-const-qualifiers-to-OpenSSL-X509-pointers.patch
delete mode 100644 meta/recipes-connectivity/openssl/openssl/0001-Added-handshake-history-reporting-when-test-fails.patch
rename meta/recipes-connectivity/openssl/{openssl_3.5.7.bb => openssl_4.0.1.bb} (87%)
create mode 100644 meta/recipes-connectivity/socat/files/0001-Fix-build-with-OpenSSL-4.0-use-ASN1_STRING-accessors.patch
create mode 100644 meta/recipes-devtools/python/python3/0001-gh-146207-Add-support-for-OpenSSL-4.0.0.patch
create mode 100644 meta/recipes-devtools/python/python3/0002-gh-148292-Update-_ssl._SSLSocket-for-OpenSSL-4.patch
create mode 100644 meta/recipes-devtools/python/python3/0003-gh-148292-Remove-shutdown-test-in-test_ssl.test_got_eof.patch
create mode 100644 meta/recipes-support/serf/serf/0001-Fix-build-with-OpenSSL-4.0-use-ASN1_STRING-accessors.patch
next prev parent reply other threads:[~2026-08-22 17:52 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-14 5:18 [RFC 0/7] openssl: upgrade to 4.0.1 and fix dependent recipes Jaipaul Cheernam
2026-08-14 5:18 ` [PATCH 1/7] openssl: upgrade 3.5.7 -> 4.0.1 Jaipaul Cheernam
2026-08-15 16:20 ` [OE-core] " Mathieu Dubois-Briand
2026-08-14 5:18 ` [PATCH 2/7] python3: backport OpenSSL 4.0 support from upstream Jaipaul Cheernam
2026-08-14 5:18 ` [PATCH 3/7] socat: fix build with OpenSSL 4.0 Jaipaul Cheernam
2026-08-14 5:18 ` [PATCH 4/7] rust: Upgrade 1.96.1 -> 1.97.1 Jaipaul Cheernam
2026-08-15 16:11 ` [OE-core] " Mathieu Dubois-Briand
2026-08-14 5:18 ` [PATCH 5/7] serf: fix build with OpenSSL 4.0 Jaipaul Cheernam
2026-08-14 5:18 ` [PATCH 6/7] u-boot-tools: " Jaipaul Cheernam
2026-08-14 11:12 ` [OE-core] " Alexander Kanavin
2026-08-21 10:44 ` Quentin Schulz
2026-08-15 16:14 ` Mathieu Dubois-Briand
2026-08-14 5:18 ` [PATCH 7/7] kea: " Jaipaul Cheernam
2026-08-14 11:14 ` [OE-core] " Alexander Kanavin
2026-08-20 18:10 ` [RFC v2 0/6] openssl: upgrade to 4.0.1 and fix dependent recipes Jaipaul Cheernam
2026-08-20 18:10 ` [RFC v2 1/6] openssl: upgrade 3.5.7 -> 4.0.1 Jaipaul Cheernam
2026-08-21 17:52 ` [OE-core] " Khem Raj
2026-08-20 18:10 ` [RFC v2 2/6] python3: backport OpenSSL 4.0 support from upstream Jaipaul Cheernam
2026-08-20 18:10 ` [RFC v2 3/6] socat: fix build with OpenSSL 4.0 Jaipaul Cheernam
2026-08-20 18:10 ` [RFC v2 4/6] serf: " Jaipaul Cheernam
2026-08-20 18:10 ` [RFC v2 5/6] u-boot: " Jaipaul Cheernam
2026-08-21 10:52 ` [OE-core] " Quentin Schulz
2026-08-22 14:02 ` Jaipaul Cheernam
2026-08-20 18:10 ` [RFC v2 6/6] kea: " Jaipaul Cheernam
2026-08-21 21:17 ` [OE-core] [RFC v2 0/6] openssl: upgrade to 4.0.1 and fix dependent recipes Richard Purdie
2026-08-22 14:31 ` [OE-core][RFC v3 0/6] openssl: upgrade 3.5.7 -> 4.0.1 Jaipaul Cheernam
2026-08-22 14:31 ` [OE-core][RFC v3 1/6] " Jaipaul Cheernam
2026-08-22 14:31 ` [OE-core][RFC v3 2/6] python3: backport OpenSSL 4.0 support from upstream Jaipaul Cheernam
2026-08-22 14:31 ` [OE-core][RFC v3 3/6] socat: fix build with OpenSSL 4.0 Jaipaul Cheernam
2026-08-22 14:31 ` [OE-core][RFC v3 4/6] serf: " Jaipaul Cheernam
2026-08-22 14:31 ` [OE-core][RFC v3 5/6] u-boot: " Jaipaul Cheernam
2026-08-22 14:31 ` [OE-core][RFC v3 6/6] kea: " Jaipaul Cheernam
2026-08-22 17:51 ` Jaipaul Cheernam [this message]
2026-08-22 17:51 ` [RFC v4 1/6] openssl: upgrade 3.5.7 -> 4.0.1 Jaipaul Cheernam
2026-08-22 17:51 ` [RFC v4 2/6] python3: backport OpenSSL 4.0 support from upstream Jaipaul Cheernam
2026-08-22 17:51 ` [RFC v4 3/6] socat: fix build with OpenSSL 4.0 Jaipaul Cheernam
2026-08-22 17:51 ` [RFC v4 4/6] serf: " Jaipaul Cheernam
2026-08-22 17:51 ` [RFC v4 5/6] u-boot: " Jaipaul Cheernam
2026-08-22 17:52 ` [RFC v4 6/6] kea: " Jaipaul Cheernam
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260822175200.57534-1-jaipaul.cheernam@est.tech \
--to=jaipaul.cheernam@est.tech \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox