diff options
3 files changed, 14 insertions, 24 deletions
diff --git a/src/core/api/qwebengineclientcertificatestore.cpp b/src/core/api/qwebengineclientcertificatestore.cpp index cac8fb151..854628b29 100644 --- a/src/core/api/qwebengineclientcertificatestore.cpp +++ b/src/core/api/qwebengineclientcertificatestore.cpp @@ -92,19 +92,15 @@ void QWebEngineClientCertificateStore::add(const QSslCertificate &certificate, c } /*! - Returns a list of private and public keys of client certificates in the in-memory store. - Returns an empty list if the in-memory store does not contain certificates. + Returns a list of the client certificates in the in-memory store. + Returns an empty list if the store does not contain any certificates. */ -QList<QWebEngineClientCertificateStore::Entry> QWebEngineClientCertificateStore::toList() const +QVector<QSslCertificate> QWebEngineClientCertificateStore::certificates() const { - QList<Entry> certificateList; - for (auto data : qAsConst(m_storeData->extraCerts)) { - Entry entry; - entry.certificate = data->certificate; - entry.privateKey = data->key; - certificateList.append(entry); - } + QVector<QSslCertificate> certificateList; + for (auto data : qAsConst(m_storeData->extraCerts)) + certificateList.append(data->certificate); return certificateList; } diff --git a/src/core/api/qwebengineclientcertificatestore.h b/src/core/api/qwebengineclientcertificatestore.h index 441a5f913..d9a1a0545 100644 --- a/src/core/api/qwebengineclientcertificatestore.h +++ b/src/core/api/qwebengineclientcertificatestore.h @@ -42,7 +42,7 @@ #include <QtWebEngineCore/qtwebenginecoreglobal.h> -#include <QtCore/qscopedpointer.h> +#include <QtCore/qvector.h> #include <QtNetwork/qsslcertificate.h> #include <QtNetwork/qsslkey.h> @@ -55,17 +55,11 @@ QT_BEGIN_NAMESPACE #if QT_CONFIG(ssl) -class QWebEngineProfile; class QWEBENGINECORE_EXPORT QWebEngineClientCertificateStore { public: - struct Entry { - QSslKey privateKey; - QSslCertificate certificate; - }; - void add(const QSslCertificate &certificate, const QSslKey &privateKey); - QList<Entry> toList() const; + QVector<QSslCertificate> certificates() const; void remove(const QSslCertificate &certificate); void clear(); diff --git a/tests/auto/core/qwebengineclientcertificatestore/tst_qwebengineclientcertificatestore.cpp b/tests/auto/core/qwebengineclientcertificatestore/tst_qwebengineclientcertificatestore.cpp index 03e68c533..6d51bf7af 100644 --- a/tests/auto/core/qwebengineclientcertificatestore/tst_qwebengineclientcertificatestore.cpp +++ b/tests/auto/core/qwebengineclientcertificatestore/tst_qwebengineclientcertificatestore.cpp @@ -77,21 +77,21 @@ void tst_QWebEngineClientCertificateStore::addAndListCertificates() QWebEngineProfile::defaultProfile()->clientCertificateStore()->add(cert, sslKey); QWebEngineProfile::defaultProfile()->clientCertificateStore()->add(certSecond, sslKeySecond); - QCOMPARE(2, QWebEngineProfile::defaultProfile()->clientCertificateStore()->toList().length()); + QCOMPARE(2, QWebEngineProfile::defaultProfile()->clientCertificateStore()->certificates().length()); } void tst_QWebEngineClientCertificateStore::removeAndClearCertificates() { - QCOMPARE(2, QWebEngineProfile::defaultProfile()->clientCertificateStore()->toList().length()); + QCOMPARE(2, QWebEngineProfile::defaultProfile()->clientCertificateStore()->certificates().length()); // Remove one certificate from in-memory store - auto list = QWebEngineProfile::defaultProfile()->clientCertificateStore()->toList(); - QWebEngineProfile::defaultProfile()->clientCertificateStore()->remove(list[0].certificate); - QCOMPARE(1, QWebEngineProfile::defaultProfile()->clientCertificateStore()->toList().length()); + auto list = QWebEngineProfile::defaultProfile()->clientCertificateStore()->certificates(); + QWebEngineProfile::defaultProfile()->clientCertificateStore()->remove(list[0]); + QCOMPARE(1, QWebEngineProfile::defaultProfile()->clientCertificateStore()->certificates().length()); // Remove all certificates in-memory store QWebEngineProfile::defaultProfile()->clientCertificateStore()->clear(); - QCOMPARE(0, QWebEngineProfile::defaultProfile()->clientCertificateStore()->toList().length()); + QCOMPARE(0, QWebEngineProfile::defaultProfile()->clientCertificateStore()->certificates().length()); } QTEST_MAIN(tst_QWebEngineClientCertificateStore) |