diff -r dbaf90a0fbe0 -r b235e520ea21 QTfrontend/net/newnetclient.cpp --- a/QTfrontend/net/newnetclient.cpp Sun Jan 26 00:09:50 2014 +0400 +++ b/QTfrontend/net/newnetclient.cpp Sun Jan 26 02:17:04 2014 +0400 @@ -239,7 +239,7 @@ void HWNewNet::SendPasswordHash(const QString & hash) { // don't send it immediately, only store and check if server asked us for a password - m_passwordHash = hash; + m_passwordHash = hash.toAscii(); maybeSendPassword(); } @@ -311,7 +311,7 @@ return; } - if(lst[2] != m_serverHash) + if(lst[1] != m_serverHash) { Error("Server authentication error"); Disconnect(); @@ -1145,15 +1145,13 @@ if(m_passwordHash.isEmpty() || m_serverSalt.isEmpty()) return; - QString hash; - - hash = QCryptographicHash::hash( + QString hash = QCryptographicHash::hash( m_clientSalt.toAscii() .append(m_serverSalt.toAscii()) .append(m_passwordHash) .append(cProtoVer->toAscii()) .append("!hedgewars") - , QCryptographicHash::Sha1); + , QCryptographicHash::Sha1).toHex(); m_serverHash = QCryptographicHash::hash( m_serverSalt.toAscii() @@ -1161,7 +1159,7 @@ .append(m_passwordHash) .append(cProtoVer->toAscii()) .append("!hedgewars") - , QCryptographicHash::Sha1); + , QCryptographicHash::Sha1).toHex(); RawSendNet(QString("PASSWORD%1%2%1%3").arg(delimeter).arg(hash).arg(m_clientSalt)); }