From 4498f1abd163b140efcbbd9e75173665c9b1c29f Mon Sep 17 00:00:00 2001 From: danieldg Date: Sun, 14 Feb 2010 00:31:44 +0000 Subject: m_dnsbl updates Prevent user registration until dnsbl lookups are complete Allow DNSBLs to be checked using (MARK type) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12454 e03df62e-2008-0410-955e-edbf42e46eb7 --- include/modules.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'include/modules.h') diff --git a/include/modules.h b/include/modules.h index 6e8e685aa..10fc6ce80 100644 --- a/include/modules.h +++ b/include/modules.h @@ -97,7 +97,7 @@ struct ModResult { /** If you change the module API in any way, increment this value. * This MUST be a pure integer, with no parenthesis */ -#define API_VERSION 139 +#define API_VERSION 140 /** * This #define allows us to call a method in all @@ -316,7 +316,7 @@ enum Implementation I_OnSendSnotice, I_OnUserPreJoin, I_OnUserPreKick, I_OnUserKick, I_OnOper, I_OnInfo, I_OnWhois, I_OnUserPreInvite, I_OnUserInvite, I_OnUserPreMessage, I_OnUserPreNotice, I_OnUserPreNick, I_OnUserMessage, I_OnUserNotice, I_OnMode, I_OnGetServerDescription, I_OnSyncUser, - I_OnSyncChannel, I_OnDecodeMetaData, I_OnWallops, I_OnAcceptConnection, + I_OnSyncChannel, I_OnDecodeMetaData, I_OnWallops, I_OnAcceptConnection, I_OnUserInit, I_OnChangeHost, I_OnChangeName, I_OnAddLine, I_OnDelLine, I_OnExpireLine, I_OnUserPostNick, I_OnPreMode, I_On005Numeric, I_OnKill, I_OnRemoteKill, I_OnLoadModule, I_OnUnloadModule, I_OnBackgroundTimer, I_OnPreCommand, I_OnCheckReady, I_OnCheckInvite, @@ -962,6 +962,11 @@ class CoreExport Module : public classbase, public usecountbase */ virtual void OnPostCommand(const std::string &command, const std::vector& parameters, LocalUser *user, CmdResult result, const std::string &original_line); + /** Called when a user is first connecting, prior to starting DNS lookups, checking initial + * connect class, or accepting any commands. + */ + virtual void OnUserInit(LocalUser* user); + /** Called to check if a user who is connecting can now be allowed to register * If any modules return false for this function, the user is held in the waiting * state until all modules return true. For example a module which implements ident -- cgit v1.2.3