summaryrefslogtreecommitdiff
path: root/modules/protocol/inspircd20.cpp
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2016-10-02 13:07:51 -0400
committerAdam <Adam@anope.org>2016-10-02 13:07:51 -0400
commit3bcb041dc67f9335c9543d89ba144e43d0274a81 (patch)
treea30904f9d95cc922c8f1ab08ce12747f9d8ec217 /modules/protocol/inspircd20.cpp
parent3af83256c654711fa03d5c3a78d7d126112cc538 (diff)
Implement support for SASL 3.2 mechanism lists.
Diffstat (limited to 'modules/protocol/inspircd20.cpp')
-rw-r--r--modules/protocol/inspircd20.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/modules/protocol/inspircd20.cpp b/modules/protocol/inspircd20.cpp
index 3444c4412..f4dfcb12f 100644
--- a/modules/protocol/inspircd20.cpp
+++ b/modules/protocol/inspircd20.cpp
@@ -401,6 +401,15 @@ class InspIRCd20Proto : public IRCDProto
Uplink::Send(Me, "FJOIN", c->name, c->creation_time, "+" + c->GetModes(true, true), "");
}
+ void SendSASLMechanisms(std::vector<Anope::string> &mechanisms) override
+ {
+ Anope::string mechlist;
+ for (unsigned i = 0; i < mechanisms.size(); ++i)
+ mechlist += "," + mechanisms[i];
+
+ Uplink::Send(Me, "METADATA", "*", "saslmechlist", mechlist.empty() ? "" : mechlist.substr(1));
+ }
+
void SendSASLMessage(const SASL::Message &message) override
{
if (!message.ext.empty())