summaryrefslogtreecommitdiff
path: root/src/bridge
diff options
context:
space:
mode:
authorFlorent Le Coz <louiz@louiz.org>2014-05-15 00:21:08 +0200
committerFlorent Le Coz <louiz@louiz.org>2014-05-15 00:32:31 +0200
commit12c8b1ae0b6f4c2b80d7c787b892ebcaafae6b03 (patch)
treead2541eb02380b41d840f6fabf32af029ab84f1f /src/bridge
parent712b7bdfdfe5d77001669dd1d11a860437dc3849 (diff)
downloadbiboumi-12c8b1ae0b6f4c2b80d7c787b892ebcaafae6b03.tar.gz
biboumi-12c8b1ae0b6f4c2b80d7c787b892ebcaafae6b03.tar.bz2
biboumi-12c8b1ae0b6f4c2b80d7c787b892ebcaafae6b03.tar.xz
biboumi-12c8b1ae0b6f4c2b80d7c787b892ebcaafae6b03.zip
Disconnect the user from all its IRC servers whenever he returns an error
fix #2524
Diffstat (limited to 'src/bridge')
-rw-r--r--src/bridge/bridge.cpp3
-rw-r--r--src/bridge/bridge.hpp3
2 files changed, 3 insertions, 3 deletions
diff --git a/src/bridge/bridge.cpp b/src/bridge/bridge.cpp
index f9dc9a6..b2563f0 100644
--- a/src/bridge/bridge.cpp
+++ b/src/bridge/bridge.cpp
@@ -41,11 +41,10 @@ static std::tuple<std::string, std::string> get_role_affiliation_from_irc_mode(c
return std::make_tuple("participant", "none");
}
-void Bridge::shutdown()
+void Bridge::shutdown(const std::string& exit_message)
{
for (auto it = this->irc_clients.begin(); it != this->irc_clients.end(); ++it)
{
- const std::string exit_message("Gateway shutdown");
it->second->send_quit_command(exit_message);
it->second->leave_dummy_channel(exit_message);
}
diff --git a/src/bridge/bridge.hpp b/src/bridge/bridge.hpp
index d0fd5bd..f78bade 100644
--- a/src/bridge/bridge.hpp
+++ b/src/bridge/bridge.hpp
@@ -27,11 +27,12 @@ public:
/**
* QUIT all connected IRC servers.
*/
- void shutdown();
+ void shutdown(const std::string& exit_message);
/**
* Remove all inactive IrcClients
*/
void clean();
+
static Xmpp::body make_xmpp_body(const std::string& str);
/***
**