From 3987e677d5ebe8033d701f85062a4f2df9077f91 Mon Sep 17 00:00:00 2001 From: Chocobo1 Date: Mon, 10 Apr 2017 20:10:48 +0800 Subject: [PATCH] Refactor: move methods under the same #if section. --- src/base/http/server.cpp | 56 +++++++++++++++++++--------------------- src/base/http/server.h | 5 ++-- 2 files changed, 30 insertions(+), 31 deletions(-) diff --git a/src/base/http/server.cpp b/src/base/http/server.cpp index 813c6a6d6..7a97702f9 100644 --- a/src/base/http/server.cpp +++ b/src/base/http/server.cpp @@ -60,6 +60,33 @@ Server::~Server() { } +void Server::incomingConnection(qintptr socketDescriptor) +{ + QTcpSocket *serverSocket; +#ifndef QT_NO_OPENSSL + if (m_https) + serverSocket = new QSslSocket(this); + else +#endif + serverSocket = new QTcpSocket(this); + + if (serverSocket->setSocketDescriptor(socketDescriptor)) { +#ifndef QT_NO_OPENSSL + if (m_https) { + static_cast(serverSocket)->setProtocol(QSsl::SecureProtocols); + static_cast(serverSocket)->setPrivateKey(m_key); + static_cast(serverSocket)->setLocalCertificateChain(m_certificates); + static_cast(serverSocket)->setPeerVerifyMode(QSslSocket::VerifyNone); + static_cast(serverSocket)->startServerEncryption(); + } +#endif + new Connection(serverSocket, m_requestHandler, this); + } + else { + serverSocket->deleteLater(); + } +} + #ifndef QT_NO_OPENSSL bool Server::setupHttps(const QByteArray &certificates, const QByteArray &key) { @@ -90,44 +117,15 @@ void Server::disableHttps() m_certificates.clear(); m_key.clear(); } -#endif - #ifdef QBT_USES_QT5 -void Server::incomingConnection(qintptr socketDescriptor) #else void Server::incomingConnection(int socketDescriptor) #endif -{ - QTcpSocket *serverSocket; -#ifndef QT_NO_OPENSSL - if (m_https) - serverSocket = new QSslSocket(this); - else -#endif - serverSocket = new QTcpSocket(this); - - if (serverSocket->setSocketDescriptor(socketDescriptor)) { -#ifndef QT_NO_OPENSSL - if (m_https) { - static_cast(serverSocket)->setProtocol(QSsl::SecureProtocols); - static_cast(serverSocket)->setPrivateKey(m_key); #ifdef QBT_USES_QT5 - static_cast(serverSocket)->setLocalCertificateChain(m_certificates); #else static_cast(serverSocket)->setLocalCertificate(m_certificates.first()); #endif - static_cast(serverSocket)->setPeerVerifyMode(QSslSocket::VerifyNone); - static_cast(serverSocket)->startServerEncryption(); - } -#endif - new Connection(serverSocket, m_requestHandler, this); - } - else { - serverSocket->deleteLater(); - } -} -#ifndef QT_NO_OPENSSL QList Server::safeCipherList() const { const QStringList badCiphers = {"idea", "rc4"}; diff --git a/src/base/http/server.h b/src/base/http/server.h index 6fd5fc131..cf3f5a671 100644 --- a/src/base/http/server.h +++ b/src/base/http/server.h @@ -34,6 +34,7 @@ #define HTTP_SERVER_H #include + #ifndef QT_NO_OPENSSL #include #include @@ -60,14 +61,14 @@ namespace Http #endif private: - IRequestHandler *m_requestHandler; - #ifdef QBT_USES_QT5 void incomingConnection(qintptr socketDescriptor); #else void incomingConnection(int socketDescriptor); #endif + IRequestHandler *m_requestHandler; + #ifndef QT_NO_OPENSSL QList safeCipherList() const;