update sources to support OpenSSL 4
authorDebian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Thu, 18 Jun 2026 11:20:31 +0000 (14:20 +0300)
committerDmitry Shachnev <mitya57@debian.org>
Thu, 18 Jun 2026 11:20:31 +0000 (14:20 +0300)
commit8e8c6b10b172a9c5ecb2e2cdc9ad12feb82306ea
tree6ffcd29504742311eed575b666344e528bd12c55
parentba1ddb3960b240969eb28c1f00ac57b91cb42402
update sources to support OpenSSL 4

Origin: upstream, https://code.qt.io/cgit/qt/qtbase.git/commit/?id=e806630e694d89f5
Last-Update: 2026-06-10

OpenSSL 4 now uses const in logical cases across its X.509 API; this
patch updates Qt's TLS backend to compile against both 3.x and 4.x.

To do this QT_OPENSSL4_CONST macro (expands to `const` on OpenSSL >= 4,
empty otherwise) is introduced for functions which changed in OpenSSL 4.

There were pre-existing functions that were already const in OpenSSL 3
but were declared without const in Qt's wrapper layer - they have now
been fixed with plain const.

ASN1_STRING was made opaque in OpenSSL 4, so replace direct access with
use of accessor functions through the wrappers.

Gbp-Pq: Name openssl4.diff
src/network/ssl/qsslcertificate_openssl.cpp
src/network/ssl/qsslcertificate_p.h
src/network/ssl/qsslsocket_openssl_p.h
src/network/ssl/qsslsocket_openssl_symbols.cpp
src/network/ssl/qsslsocket_openssl_symbols_p.h