From fae818fdc89364515a86ef1cc1d1aa449372f281 Mon Sep 17 00:00:00 2001 From: Melvin Keskin Date: Tue, 25 Jun 2019 12:09:27 +0200 Subject: Add register stream feature This adds parsing, serialization and a test for the 'register' stream feature of XEP-0077: In-Band Registration. Co-authored-by: Linus Jahn --- src/base/QXmppStreamFeatures.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/base/QXmppStreamFeatures.cpp') diff --git a/src/base/QXmppStreamFeatures.cpp b/src/base/QXmppStreamFeatures.cpp index 214cbd9f..8079962a 100644 --- a/src/base/QXmppStreamFeatures.cpp +++ b/src/base/QXmppStreamFeatures.cpp @@ -116,6 +116,16 @@ void QXmppStreamFeatures::setClientStateIndicationMode(QXmppStreamFeatures::Mode m_csiMode = mode; } +QXmppStreamFeatures::Mode QXmppStreamFeatures::registerMode() const +{ + return m_registerMode; +} + +void QXmppStreamFeatures::setRegisterMode(const QXmppStreamFeatures::Mode ®isterMode) +{ + m_registerMode = registerMode; +} + /// \cond bool QXmppStreamFeatures::isStreamFeatures(const QDomElement &element) { @@ -148,6 +158,7 @@ void QXmppStreamFeatures::parse(const QDomElement &element) m_tlsMode = readFeature(element, "starttls", ns_tls); m_streamManagementMode = readFeature(element, "sm", ns_stream_management); m_csiMode = readFeature(element, "csi", ns_csi); + m_registerMode = readFeature(element, "register", ns_register_feature); // parse advertised compression methods QDomElement compression = element.firstChildElement("compression"); @@ -194,6 +205,7 @@ void QXmppStreamFeatures::toXml(QXmlStreamWriter *writer) const writeFeature(writer, "starttls", ns_tls, m_tlsMode); writeFeature(writer, "sm", ns_stream_management, m_streamManagementMode); writeFeature(writer, "csi", ns_csi, m_csiMode); + writeFeature(writer, "register", ns_register_feature, m_registerMode); if (!m_compressionMethods.isEmpty()) { -- cgit v1.2.3