diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/protocol/inspircd20.cpp | 4 | ||||
-rw-r--r-- | modules/protocol/unreal.cpp | 11 |
2 files changed, 9 insertions, 6 deletions
diff --git a/modules/protocol/inspircd20.cpp b/modules/protocol/inspircd20.cpp index 8dbdfb2ff..9bb3d9e1a 100644 --- a/modules/protocol/inspircd20.cpp +++ b/modules/protocol/inspircd20.cpp @@ -483,7 +483,7 @@ struct IRCDMessageEncap : IRCDMessage u->SetRealname(params[3]); UplinkSocket::Message(u) << "FNAME " << params[3]; } - else if (params[1] == "SASL" && params.size() == 6) + else if (Config->NSSASL && params[1] == "SASL" && params.size() == 6) { class InspIRCDSASLIdentifyRequest : public IdentifyRequest { @@ -501,6 +501,8 @@ struct IRCDMessageEncap : IRCDMessage void OnFail() anope_override { UplinkSocket::Message(Me) << "ENCAP " << this->uid.substr(0, 3) << " SASL " << Me->GetSID() << " " << this->uid << " " << " D F"; + + Log(findbot(Config->NickServ)) << "A user failed to identify for account " << this->GetAccount() << " using SASL"; } }; diff --git a/modules/protocol/unreal.cpp b/modules/protocol/unreal.cpp index 03a63687f..62157b8b4 100644 --- a/modules/protocol/unreal.cpp +++ b/modules/protocol/unreal.cpp @@ -867,7 +867,7 @@ struct IRCDMessageSASL : IRCDMessage return; UplinkSocket::Message(Me) << "SVSLOGIN " << this->uid.substr(0, p) << " " << this->uid << " " << this->GetAccount(); - UplinkSocket::Message(findbot(Config->NickServ)) << "SASL " << this->uid.substr(0, p) << " " << this->uid << " D S"; + UplinkSocket::Message() << "SASL " << this->uid.substr(0, p) << " " << this->uid << " D S"; } void OnFail() anope_override @@ -876,7 +876,9 @@ struct IRCDMessageSASL : IRCDMessage if (p == Anope::string::npos) return; - UplinkSocket::Message(findbot(Config->NickServ)) << "SASL " << this->uid.substr(0, p) << " " << this->uid << " D F"; + UplinkSocket::Message() << "SASL " << this->uid.substr(0, p) << " " << this->uid << " D F"; + + Log(findbot(Config->NickServ)) << "A user failed to identify for account " << this->GetAccount() << " using SASL"; } }; @@ -893,12 +895,11 @@ struct IRCDMessageSASL : IRCDMessage bool Run(MessageSource &source, const std::vector<Anope::string> ¶ms) anope_override { size_t p = params[1].find('!'); - if (p == Anope::string::npos) + if (!Config->NSSASL || p == Anope::string::npos) return true; - /* Unreal segfaults if we send from Me */ if (params[2] == "S") - UplinkSocket::Message(findbot(Config->NickServ)) << "SASL " << params[1].substr(0, p) << " " << params[1] << " C +"; + UplinkSocket::Message() << "SASL " << params[1].substr(0, p) << " " << params[1] << " C +"; else if (params[2] == "C") { Anope::string decoded; |