diff options
Diffstat (limited to 'src/client/net/serverconnection.cpp')
-rw-r--r-- | src/client/net/serverconnection.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/client/net/serverconnection.cpp b/src/client/net/serverconnection.cpp index 7954c34..46cba79 100644 --- a/src/client/net/serverconnection.cpp +++ b/src/client/net/serverconnection.cpp @@ -18,8 +18,8 @@ #define CHALLENGE_LEN 20 -ServerConnection::ServerConnection(const QString& host, const quint16 port, const QByteArray& sessionName, const QByteArray& certHash) : - QObject(NULL), _timerDelete(0), _jpegQuality(80), _authed(0), _sessionName(sessionName), _certHash(certHash) +ServerConnection::ServerConnection(const QString& host, const quint16 port, const QByteArray& sessionName, const QByteArray& certHash, bool autoConnect) : + QObject(NULL), _timerDelete(0), _jpegQuality(80), _authed(0), _sessionName(sessionName), _certHash(certHash), _autoConnect(autoConnect) { _socket = new QSslSocket(); _blank = new BlankScreen(); @@ -132,7 +132,8 @@ void ServerConnection::handleMsg() } // Check challenge response QByteArray serverhash(_fromServer.getFieldBytes(_HASH)); - if (serverhash != genSha1(&_sessionName, &_myChallenge)) + if (serverhash != genSha1(&_sessionName, &_myChallenge) + && !_autoConnect) { qDebug("invalid. STOP."); emit stateChange(ConnectWindow::InvalidSslHash); |