From 78dc9813021c9caf05fc47c08fc0827b4e6c8465 Mon Sep 17 00:00:00 2001 From: brain Date: Thu, 10 Aug 2006 18:58:21 +0000 Subject: Move AllModulesReportReady into a private method of class InspIRCd git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4851 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/inspircd.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/inspircd.cpp') diff --git a/src/inspircd.cpp b/src/inspircd.cpp index 6dad70a51..758dd4757 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -1024,3 +1024,26 @@ int main(int argc, char** argv) } return 0; } + +/* this returns true when all modules are satisfied that the user should be allowed onto the irc server + * (until this returns true, a user will block in the waiting state, waiting to connect up to the + * registration timeout maximum seconds) + */ +bool InspIRCd::AllModulesReportReady(userrec* user) +{ + if (!Config->global_implementation[I_OnCheckReady]) + return true; + + for (int i = 0; i <= MODCOUNT; i++) + { + if (Config->implement_lists[i][I_OnCheckReady]) + { + int res = modules[i]->OnCheckReady(user); + if (!res) + return false; + } + } + return true; +} + + -- cgit v1.3.1-10-gc9f91