summaryrefslogtreecommitdiff
path: root/modules/sasl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/sasl.cpp')
-rw-r--r--modules/sasl.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/modules/sasl.cpp b/modules/sasl.cpp
index a5edbaf32..459c1ff18 100644
--- a/modules/sasl.cpp
+++ b/modules/sasl.cpp
@@ -278,6 +278,10 @@ void IdentifyRequestListener::OnSuccess(NickServ::IdentifyRequest *req)
if (!na || na->GetAccount()->HasFieldS("NS_SUSPENDED"))
return OnFail(req);
+ unsigned int maxlogins = Config->GetModule("ns_identify")->Get<unsigned int>("maxlogins");
+ if (maxlogins && na->GetAccount()->users.size() >= maxlogins)
+ return OnFail(req);
+
Session *s = service->GetSession(uid);
if (s)
{