diff options
author | Peter Powell <petpow@saberuk.com> | 2017-10-11 00:15:14 +0100 |
---|---|---|
committer | Peter Powell <petpow@saberuk.com> | 2017-10-11 11:47:58 +0100 |
commit | 407b2e004cf66e442771ec5d2bbe700dee1f3760 (patch) | |
tree | db1fd751f9a2be5465b02e5dd52be720e643e43b /src | |
parent | 6226ed9a29edb636506a6ab0fd756cfcc1267cdb (diff) |
Don't abort the SASL authentication in OnUserConnect.
SASL-3.2 allows SASL auth to happen post-registration so this is
no longer correct.
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/m_sasl.cpp | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/src/modules/m_sasl.cpp b/src/modules/m_sasl.cpp index f1c467204..6e28a91aa 100644 --- a/src/modules/m_sasl.cpp +++ b/src/modules/m_sasl.cpp @@ -245,12 +245,6 @@ class SaslAuthenticator return this->state; } - void Abort(void) - { - this->state = SASL_DONE; - this->result = SASL_ABORT; - } - bool SendClientMessage(const std::vector<std::string>& parameters) { if (this->state != SASL_COMM) @@ -267,7 +261,8 @@ class SaslAuthenticator if (parameters[0].c_str()[0] == '*') { - this->Abort(); + this->state = SASL_DONE; + this->result = SASL_ABORT; return false; } @@ -404,16 +399,6 @@ class ModuleSASL : public Module servertracker.Reset(); } - void OnUserConnect(LocalUser *user) CXX11_OVERRIDE - { - SaslAuthenticator *sasl_ = authExt.get(user); - if (sasl_) - { - sasl_->Abort(); - authExt.unset(user); - } - } - void OnDecodeMetaData(Extensible* target, const std::string& extname, const std::string& extdata) CXX11_OVERRIDE { if ((target == NULL) && (extname == "saslmechlist")) |