From 8910a01c7212e1fb2d5192b19ef6179dd1b7e456 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5rten=20Nordheim?= Date: Mon, 20 Sep 2021 20:05:30 +0200 Subject: [PATCH] Fix loading certificates on Android with OpenSSL Fixes: QTBUG-96606 Change-Id: Ic2a55fa65c5dc3c057a4da25c218af5a9861410e Reviewed-by: Timur Pocheptsov Reviewed-by: Assam Boudjelthia (cherry picked from commit 504df6b135d4ac17aa2290e1aa943d216fb7ef55) --- src/plugins/tls/openssl/qtlsbackend_openssl.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/plugins/tls/openssl/qtlsbackend_openssl.cpp b/src/plugins/tls/openssl/qtlsbackend_openssl.cpp index 69a85a83ec..9acac9b9d1 100644 --- a/src/plugins/tls/openssl/qtlsbackend_openssl.cpp +++ b/src/plugins/tls/openssl/qtlsbackend_openssl.cpp @@ -367,7 +367,6 @@ QTlsPrivate::X509Certificate *QTlsBackendOpenSSL::createCertificate() const namespace QTlsPrivate { -// TLSTODO: remove. #ifdef Q_OS_ANDROID QList fetchSslCertificateData(); #endif @@ -399,7 +398,9 @@ QList systemCaCertificates() CertCloseStore(hSystemStore, 0); } #elif defined(Q_OS_ANDROID) - // TODO: find where it hides its system certs ! + const QList certData = fetchSslCertificateData(); + for (auto certDatum : certData) + systemCerts.append(QSslCertificate::fromData(certDatum, QSsl::Der)); #elif defined(Q_OS_UNIX) { const QList directories = QSslSocketPrivate::unixRootCertDirectories();