summaryrefslogtreecommitdiff
path: root/louloulibs
diff options
context:
space:
mode:
authorlouiz’ <louiz@louiz.org>2016-06-24 11:23:01 +0200
committerlouiz’ <louiz@louiz.org>2016-06-24 11:23:01 +0200
commitb2e7edeea8bf08b6b7e75d60af3af0c30fdaa4f3 (patch)
treefb991c28f6edce2e25c37d2394bb67d7f743dc1b /louloulibs
parent4e959a3869c4a69b9d59de69694644c37380ff11 (diff)
downloadbiboumi-b2e7edeea8bf08b6b7e75d60af3af0c30fdaa4f3.tar.gz
biboumi-b2e7edeea8bf08b6b7e75d60af3af0c30fdaa4f3.tar.bz2
biboumi-b2e7edeea8bf08b6b7e75d60af3af0c30fdaa4f3.tar.xz
biboumi-b2e7edeea8bf08b6b7e75d60af3af0c30fdaa4f3.zip
Properly set the “from” of the ping results to the correct full JID
Diffstat (limited to 'louloulibs')
-rw-r--r--louloulibs/xmpp/xmpp_component.cpp10
-rw-r--r--louloulibs/xmpp/xmpp_component.hpp2
2 files changed, 12 insertions, 0 deletions
diff --git a/louloulibs/xmpp/xmpp_component.cpp b/louloulibs/xmpp/xmpp_component.cpp
index 1be7a06..e87cdf7 100644
--- a/louloulibs/xmpp/xmpp_component.cpp
+++ b/louloulibs/xmpp/xmpp_component.cpp
@@ -631,6 +631,16 @@ void XmppComponent::send_iq_version_request(const std::string& from,
this->send_stanza(iq);
}
+void XmppComponent::send_iq_result_full_jid(const std::string& id, const std::string& to_jid, const std::string& from_full_jid)
+{
+ Stanza iq("iq");
+ iq["from"] = from_full_jid;
+ iq["to"] = to_jid;
+ iq["id"] = id;
+ iq["type"] = "result";
+ this->send_stanza(iq);
+}
+
void XmppComponent::send_iq_result(const std::string& id, const std::string& to_jid, const std::string& from_local_part)
{
Stanza iq("iq");
diff --git a/louloulibs/xmpp/xmpp_component.hpp b/louloulibs/xmpp/xmpp_component.hpp
index 913e337..ae4d76b 100644
--- a/louloulibs/xmpp/xmpp_component.hpp
+++ b/louloulibs/xmpp/xmpp_component.hpp
@@ -200,6 +200,8 @@ public:
* Send an empty iq of type result
*/
void send_iq_result(const std::string& id, const std::string& to_jid, const std::string& from);
+ void send_iq_result_full_jid(const std::string& id, const std::string& to_jid,
+ const std::string& from_full_jid);
void handle_handshake(const Stanza& stanza);
void handle_error(const Stanza& stanza);