aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppSaslAuth.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/base/QXmppSaslAuth.cpp')
-rw-r--r--src/base/QXmppSaslAuth.cpp32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/base/QXmppSaslAuth.cpp b/src/base/QXmppSaslAuth.cpp
index d651fad8..ddec1e0d 100644
--- a/src/base/QXmppSaslAuth.cpp
+++ b/src/base/QXmppSaslAuth.cpp
@@ -72,8 +72,38 @@ QXmppSaslChallenge::QXmppSaslChallenge(const QByteArray &value)
{
}
-QXmppSaslFailure::QXmppSaslFailure()
+QXmppSaslFailure::QXmppSaslFailure(const QString &condition)
: QXmppSaslStanza("failure")
+ , m_condition(condition)
+{
+}
+
+QString QXmppSaslFailure::condition() const
+{
+ return m_condition;
+}
+
+void QXmppSaslFailure::setCondition(const QString &condition)
+{
+ m_condition = condition;
+}
+
+void QXmppSaslFailure::parse(const QDomElement &element)
+{
+ m_condition = element.firstChildElement().tagName();
+}
+
+void QXmppSaslFailure::toXml(QXmlStreamWriter *writer) const
+{
+ writer->writeStartElement("failure");
+ writer->writeAttribute("xmlns", ns_xmpp_sasl);
+ if (!m_condition.isEmpty())
+ writer->writeEmptyElement(m_condition);
+ writer->writeEndElement();
+}
+
+QXmppSaslResponse::QXmppSaslResponse(const QByteArray &value)
+ : QXmppSaslStanza("response", value)
{
}