aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_sasl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/m_sasl.cpp')
-rw-r--r--src/modules/m_sasl.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/modules/m_sasl.cpp b/src/modules/m_sasl.cpp
index 85aba2d0f..2ecd38640 100644
--- a/src/modules/m_sasl.cpp
+++ b/src/modules/m_sasl.cpp
@@ -114,17 +114,14 @@ private:
bool OnRequest(LocalUser* user, bool adding) override
{
- if (requiressl && sslapi && !sslapi->GetCertificate(user))
- return false;
-
// Servers MUST NAK any sasl capability request if the authentication layer
// is unavailable.
- return servertracker.IsOnline();
+ return OnList(user);
}
bool OnList(LocalUser* user) override
{
- if (requiressl && sslapi && !sslapi->GetCertificate(user))
+ if (requiressl && sslapi && !sslapi->IsSecure(user))
return false;
// Servers MUST NOT advertise the sasl capability if the authentication layer
@@ -189,7 +186,7 @@ private:
params.reserve(3);
params.push_back(user->GetRealHost());
params.push_back(user->GetAddress());
- params.emplace_back(sslapi && sslapi->GetCertificate(user) ? "S" : "P");
+ params.emplace_back(sslapi && sslapi->IsSecure(user) ? "S" : "P");
SendSASL(user, "*", 'H', params);
}