diff options
author | Florent Le Coz <louiz@louiz.org> | 2015-11-03 16:56:38 +0100 |
---|---|---|
committer | Florent Le Coz <louiz@louiz.org> | 2015-11-05 02:17:19 +0100 |
commit | e8386bd14e9783f0bef39bdf577545522e33e719 (patch) | |
tree | 6466025811c0dfdd085e96da2e40b7eee8741323 /src/irc | |
parent | 06db9b366a83121e0c914e527a367f90ec71940a (diff) | |
download | biboumi-e8386bd14e9783f0bef39bdf577545522e33e719.tar.gz biboumi-e8386bd14e9783f0bef39bdf577545522e33e719.tar.bz2 biboumi-e8386bd14e9783f0bef39bdf577545522e33e719.tar.xz biboumi-e8386bd14e9783f0bef39bdf577545522e33e719.zip |
Provide an adhoc option to let user pass the cert verif for some IRC servers
Diffstat (limited to 'src/irc')
-rw-r--r-- | src/irc/irc_client.cpp | 11 | ||||
-rw-r--r-- | src/irc/irc_client.hpp | 3 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/irc/irc_client.cpp b/src/irc/irc_client.cpp index 7caf443..93ea2ae 100644 --- a/src/irc/irc_client.cpp +++ b/src/irc/irc_client.cpp @@ -962,3 +962,14 @@ void IrcClient::leave_dummy_channel(const std::string& exit_message) this->dummy_channel.remove_all_users(); this->bridge->send_muc_leave(Iid("%"s + this->hostname), std::string(this->current_nick), exit_message, true); } + +#ifdef BOTAN_FOUND +bool IrcClient::abort_on_invalid_cert() const +{ +#ifdef USE_DATABASE + auto options = Database::get_irc_server_options(this->bridge->get_bare_jid(), this->hostname); + return options.verifyCert.value(); +#endif + return true; +} +#endif diff --git a/src/irc/irc_client.hpp b/src/irc/irc_client.hpp index cdae0aa..733fc92 100644 --- a/src/irc/irc_client.hpp +++ b/src/irc/irc_client.hpp @@ -52,6 +52,9 @@ public: * complete messages from it. */ void parse_in_buffer(const size_t) override final; +#ifdef BOTAN_FOUND + virtual bool abort_on_invalid_cert() const override final; +#endif /** * Return the channel with this name, create it if it does not yet exist */ |