#include "QXmppNonSASLAuth.h" #include "QXmppUtils.h" #include QXmppNonSASLAuthTypesRequestIq::QXmppNonSASLAuthTypesRequestIq() : QXmppIq(QXmppIq::Get) { } void QXmppNonSASLAuthTypesRequestIq::setUsername( const QString &username ) { m_username = username; } QByteArray QXmppNonSASLAuthTypesRequestIq::toXmlElementFromChild() const { QByteArray resultingXml; resultingXml += ""; resultingXml += "" + escapeString(m_username).toUtf8() + ""; resultingXml += ""; return resultingXml; } QXmppNonSASLAuthIq::QXmppNonSASLAuthIq() : QXmppIq(QXmppIq::Set), m_useplaintext(false) { } QByteArray QXmppNonSASLAuthIq::toXmlElementFromChild() const { QByteArray resultingXml; resultingXml += ""; resultingXml += "" + escapeString(m_username).toUtf8() + ""; if ( m_useplaintext ) resultingXml += "" + escapeString(m_password).toUtf8() + ""; else {//SHA1(concat(sid, password)). QByteArray textSid = m_sid.toUtf8(); QByteArray encodedPassword = m_password.toUtf8(); QByteArray digest = QCryptographicHash::hash(textSid + encodedPassword, QCryptographicHash::Sha1 ).toHex(); resultingXml += "" + digest + ""; } resultingXml += "" + escapeString(m_resource).toUtf8() + ""; resultingXml += ""; return resultingXml; } void QXmppNonSASLAuthIq::setUsername( const QString &username ) { m_username = username; } void QXmppNonSASLAuthIq::setPassword( const QString &password ) { m_password = password; } void QXmppNonSASLAuthIq::setResource( const QString &resource ) { m_resource = resource; } void QXmppNonSASLAuthIq::setStreamId( const QString &sid ) { m_sid = sid; } void QXmppNonSASLAuthIq::setUsePlainText( bool use ) { m_useplaintext = use; }