From 3991dd6c38931a3be04270379fa7e84fbb46a74f Mon Sep 17 00:00:00 2001 From: Angen Date: Wed, 20 Jan 2021 19:54:16 +0000 Subject: [PATCH] Fix incorrect user identifier used in 0342f01580 iq uses lowercased version of user name, but patch was saving raw one. Found by: @Freagarach This was SVN commit r24733. --- source/lobby/XmppClient.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/source/lobby/XmppClient.cpp b/source/lobby/XmppClient.cpp index c9e371e2ed..da99589b52 100644 --- a/source/lobby/XmppClient.cpp +++ b/source/lobby/XmppClient.cpp @@ -378,7 +378,7 @@ void XmppClient::SendIqGetConnectionData(const std::string& jid, const std::stri connectionData->m_Password = password; glooxwrapper::IQ iq(gloox::IQ::Get, targetJID, m_client->getID()); iq.addExtension(connectionData); - m_connectionDataJid = jid; + m_connectionDataJid = iq.from().full(); m_connectionDataIqId = iq.id().to_string(); DbgXMPP("SendIqGetConnectionData [" << tag_xml(iq) << "]"); m_client->send(iq); @@ -840,11 +840,15 @@ bool XmppClient::handleIq(const glooxwrapper::IQ& iq) if (g_NetServer || !g_NetClient) return true; - if (!m_connectionDataJid.empty() && m_connectionDataJid.compare(iq.from().full()) != 0) + if (!m_connectionDataJid.empty() && m_connectionDataJid.compare(iq.from().full()) != 0) { + LOGMESSAGE("XmppClient: Received connection data from invalid host: %s", iq.from().username()); return true; + } - if (!m_connectionDataIqId.empty() && m_connectionDataIqId.compare(iq.id().to_string()) != 0) + if (!m_connectionDataIqId.empty() && m_connectionDataIqId.compare(iq.id().to_string()) != 0) { + LOGWARNING("XmppClient: Received connection data with invalid id"); return true; + } if (!cd->m_Error.empty()) {