From bf9bb2acb664052dc0b9da69cbf5f58480281ee3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5rten=20Nordheim?= Date: Thu, 6 Feb 2020 10:29:34 +0100 Subject: Remove dependence on QtNetworkPrivate from QSslServer Locally I was unable to build QSslServer due to QAbstractSocketEnginePrivate not being exported. Change-Id: I739b63d03d2ff378e03ef3fcd7b1ab55db24f63b Reviewed-by: Tasuku Suzuki Reviewed-by: Mikhail Svetkin --- src/sslserver/qsslserver.cpp | 9 ++++----- src/sslserver/qsslserver.h | 5 ++++- src/sslserver/qsslserver_p.h | 5 ++--- src/sslserver/sslserver.pro | 2 +- 4 files changed, 11 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/sslserver/qsslserver.cpp b/src/sslserver/qsslserver.cpp index b22cadb..b07f04b 100644 --- a/src/sslserver/qsslserver.cpp +++ b/src/sslserver/qsslserver.cpp @@ -36,21 +36,21 @@ QT_BEGIN_NAMESPACE Q_LOGGING_CATEGORY(lcSS, "qt.sslserver"); QSslServer::QSslServer(QObject *parent): - QTcpServer (QAbstractSocket::TcpSocket, *new QSslServerPrivate, parent) + QTcpServer (parent), d(new QSslServerPrivate) { } QSslServer::QSslServer(const QSslConfiguration &sslConfiguration, QObject *parent): - QTcpServer (QAbstractSocket::TcpSocket, *new QSslServerPrivate, parent) + QTcpServer (parent), d(new QSslServerPrivate) { - Q_D(QSslServer); d->sslConfiguration = sslConfiguration; } +QSslServer::~QSslServer() = default; + void QSslServer::incomingConnection(qintptr handle) { - Q_D(QSslServer); QSslSocket *socket = new QSslSocket(this); connect(socket, QOverload&>::of(&QSslSocket::sslErrors), [this, socket](const QList &errors) { @@ -67,7 +67,6 @@ void QSslServer::incomingConnection(qintptr handle) void QSslServer::setSslConfiguration(const QSslConfiguration &sslConfiguration) { - Q_D(QSslServer); d->sslConfiguration = sslConfiguration; } QT_END_NAMESPACE diff --git a/src/sslserver/qsslserver.h b/src/sslserver/qsslserver.h index 13b01d1..841fc4f 100644 --- a/src/sslserver/qsslserver.h +++ b/src/sslserver/qsslserver.h @@ -35,6 +35,8 @@ #include #include +#include + QT_BEGIN_NAMESPACE class QSslServerPrivate; @@ -44,6 +46,7 @@ class Q_SSLSERVER_EXPORT QSslServer : public QTcpServer public: QSslServer(QObject *parent = nullptr); QSslServer(const QSslConfiguration &sslConfiguration, QObject *parent = nullptr); + ~QSslServer(); void setSslConfiguration(const QSslConfiguration &sslConfiguration); @@ -54,7 +57,7 @@ protected: void incomingConnection(qintptr handle) override final; private: - Q_DECLARE_PRIVATE(QSslServer) + QScopedPointer d; }; QT_END_NAMESPACE diff --git a/src/sslserver/qsslserver_p.h b/src/sslserver/qsslserver_p.h index 4556c3d..26d0ad1 100644 --- a/src/sslserver/qsslserver_p.h +++ b/src/sslserver/qsslserver_p.h @@ -32,11 +32,10 @@ #include -#include - QT_BEGIN_NAMESPACE -class QSslServerPrivate: public QTcpServerPrivate { +class QSslServerPrivate +{ public: QSslConfiguration sslConfiguration; }; diff --git a/src/sslserver/sslserver.pro b/src/sslserver/sslserver.pro index 6d09233..0956a8c 100644 --- a/src/sslserver/sslserver.pro +++ b/src/sslserver/sslserver.pro @@ -1,7 +1,7 @@ TARGET = QtSslServer INCLUDEPATH += . -QT = network network-private core-private +QT = network core HEADERS += \ qsslserver.h \ -- cgit v1.2.3