From b4f3c5d64697883b29ba292f315915e4c610bdba Mon Sep 17 00:00:00 2001 From: Timur Pocheptsov Date: Fri, 12 Mar 2021 12:12:59 +0100 Subject: Stop using QSslConfigurationPrivate inside the plugin code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It was reasonable while backends were a part of QtNetwork. Now if moving them outside (or just trying to implement a new backend as a plugin), accessing data-members of QSslConfigurationPrivate means that any plugin knows about memory layout actual only for the version of Qt it was built with/for. Instead, we have to use the public class. Since it does not have all needed setters and some data-members have no access at all, we provide an API in QTlsBackend (which stays a part of QtNetwork) that knows the actual memory layout. Task-number: QTBUG-65922 Change-Id: I5ca1de4f982b4b11d9a87c4b40413367dcb83c16 Reviewed-by: Edward Welbourne Reviewed-by: MÃ¥rten Nordheim Reviewed-by: Timur Pocheptsov (cherry picked from commit 31cc0df7607a4d5887812c304aac0001c2cd7705) Reviewed-by: Qt Cherry-pick Bot --- src/network/ssl/qsslconfiguration.h | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'src/network/ssl/qsslconfiguration.h') diff --git a/src/network/ssl/qsslconfiguration.h b/src/network/ssl/qsslconfiguration.h index 716ea8ed7f..43566bc0cd 100644 --- a/src/network/ssl/qsslconfiguration.h +++ b/src/network/ssl/qsslconfiguration.h @@ -72,11 +72,6 @@ class QSslKey; class QSslEllipticCurve; class QSslDiffieHellmanParameters; -namespace dtlsopenssl -{ -class DtlsState; -} - class QSslConfigurationPrivate; class Q_NETWORK_EXPORT QSslConfiguration { @@ -202,8 +197,7 @@ private: friend class QSslSocket; friend class QSslConfigurationPrivate; friend class QSslContext; - friend class QDtlsBasePrivate; - friend class dtlsopenssl::DtlsState; + friend class QTlsBackend; QSslConfiguration(QSslConfigurationPrivate *dd); QSharedDataPointer d; }; -- cgit v1.2.3