summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlouiz’ <louiz@louiz.org>2017-08-30 16:14:35 +0200
committerlouiz’ <louiz@louiz.org>2017-08-30 16:14:35 +0200
commitdabc48b79b6189c99c246ae01af27fa170fd86a3 (patch)
tree176375a7192257873eaf6f3d357e734fc6270968
parent98227db6ad005c2e73445ce10e13484cb0568d2c (diff)
downloadbiboumi-dabc48b79b6189c99c246ae01af27fa170fd86a3.tar.gz
biboumi-dabc48b79b6189c99c246ae01af27fa170fd86a3.tar.bz2
biboumi-dabc48b79b6189c99c246ae01af27fa170fd86a3.tar.xz
biboumi-dabc48b79b6189c99c246ae01af27fa170fd86a3.zip
Mark messages from the IRC server as private and no-copy
fix #3284
-rw-r--r--src/bridge/bridge.cpp4
-rw-r--r--tests/end_to_end/__main__.py12
2 files changed, 12 insertions, 4 deletions
diff --git a/src/bridge/bridge.cpp b/src/bridge/bridge.cpp
index 3bc618f..02ba565 100644
--- a/src/bridge/bridge.cpp
+++ b/src/bridge/bridge.cpp
@@ -934,9 +934,9 @@ void Bridge::send_xmpp_message(const std::string& from, const std::string& autho
for (const auto& resource: this->resources_in_server[from])
{
if (Config::get("fixed_irc_server", "").empty())
- this->xmpp.send_message(from, this->make_xmpp_body(body, encoding), this->user_jid + "/" + resource, "chat", false, false);
+ this->xmpp.send_message(from, this->make_xmpp_body(body, encoding), this->user_jid + "/" + resource, "chat", false, true);
else
- this->xmpp.send_message("", this->make_xmpp_body(body, encoding), this->user_jid + "/" + resource, "chat", false, false);
+ this->xmpp.send_message("", this->make_xmpp_body(body, encoding), this->user_jid + "/" + resource, "chat", false, true);
}
}
diff --git a/tests/end_to_end/__main__.py b/tests/end_to_end/__main__.py
index 859904f..93474ac 100644
--- a/tests/end_to_end/__main__.py
+++ b/tests/end_to_end/__main__.py
@@ -413,7 +413,11 @@ def connection_begin_sequence(irc_host, jid, expected_irc_presence=False, fixed_
xpath_re = "/message[@to='" + jid + "'][@from='" + irc_host + "@biboumi.localhost']/body[re:test(text(), '%s')]"
result = (
partial(expect_stanza,
- xpath % ('Connecting to %s:6697 (encrypted)' % irc_host)),
+ (xpath % ('Connecting to %s:6697 (encrypted)' % irc_host),
+ "/message/hints:no-copy",
+ "/message/carbon:private"
+ )
+ ),
partial(expect_stanza,
xpath % 'Connection failed: Connection refused'),
partial(expect_stanza,
@@ -455,7 +459,11 @@ def connection_tls_begin_sequence(irc_host, jid, fixed_irc_server):
irc_host = 'irc.localhost'
return (
partial(expect_stanza,
- xpath % ('Connecting to %s:7778 (encrypted)' % irc_host)),
+ (xpath % ('Connecting to %s:7778 (encrypted)' % irc_host),
+ "/message/hints:no-copy",
+ "/message/carbon:private",
+ )
+ ),
partial(expect_stanza,
xpath % 'Connected to IRC server (encrypted).'),
# These five messages can be receive in any order