]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/modules.h
Fix not propagating rehashes properly across the network.
[user/henk/code/inspircd.git] / include / modules.h
index 4120f2cc9a68a842dc67546d4751089af9d226be..b4f13c6b72e44df665c32e71390071db9782fd74 100644 (file)
@@ -220,13 +220,13 @@ enum Implementation
        I_OnUserPostNick, I_OnPreMode, I_On005Numeric, I_OnKill, I_OnLoadModule,
        I_OnUnloadModule, I_OnBackgroundTimer, I_OnPreCommand, I_OnCheckReady, I_OnCheckInvite,
        I_OnRawMode, I_OnCheckKey, I_OnCheckLimit, I_OnCheckBan, I_OnCheckChannelBan, I_OnExtBanCheck,
-       I_OnChangeLocalUserHost, I_OnPreTopicChange,
+       I_OnPreChangeHost, I_OnPreTopicChange,
        I_OnPostTopicChange, I_OnPostConnect, I_OnPostDeoper,
        I_OnPreChangeRealName, I_OnUserRegister, I_OnChannelPreDelete, I_OnChannelDelete,
        I_OnPostOper, I_OnPostCommand, I_OnPostJoin,
        I_OnBuildNeighborList, I_OnGarbageCollect, I_OnSetConnectClass,
        I_OnUserMessage, I_OnPassCompare, I_OnNamesListItem, I_OnNumeric,
-       I_OnPreRehash, I_OnModuleRehash, I_OnSendWhoLine, I_OnChangeIdent, I_OnSetUserIP,
+       I_OnPreRehash, I_OnModuleRehash, I_OnChangeIdent, I_OnSetUserIP,
        I_OnServiceAdd, I_OnServiceDel, I_OnUserWrite,
        I_END
 };
@@ -570,7 +570,7 @@ class CoreExport Module : public classbase, public usecountbase
        /** Called whenever a user's real name is changed.
         * This event triggers after the name has been set.
         * @param user The user who's real name is being changed
-        * @param name The new real name being set on the user
+        * @param real The new real name being set on the user
         */
        virtual void OnChangeRealName(User* user, const std::string& real);
 
@@ -717,8 +717,9 @@ class CoreExport Module : public classbase, public usecountbase
         * @param parameters An array of array of characters containing the parameters for the command
         * @param user the user issuing the command
         * @param result The return code given by the command handler, one of CMD_SUCCESS or CMD_FAILURE
+        * @param loop Whether the command is being called from LoopCall or directly.
         */
-       virtual void OnPostCommand(Command* command, const CommandBase::Params& parameters, LocalUser* user, CmdResult result);
+       virtual void OnPostCommand(Command* command, const CommandBase::Params& parameters, LocalUser* user, CmdResult result, bool loop);
 
        /** Called when a user is first connecting, prior to starting DNS lookups, checking initial
         * connect class, or accepting any commands.
@@ -824,7 +825,7 @@ class CoreExport Module : public classbase, public usecountbase
         * @param newhost The new hostname
         * @return 1 to deny the host change, 0 to allow
         */
-       virtual ModResult OnChangeLocalUserHost(LocalUser* user, const std::string &newhost);
+       virtual ModResult OnPreChangeHost(LocalUser* user, const std::string &newhost);
 
        /** Called whenever a change of a local users real name is attempted.
         * return MOD_RES_DENY to deny the name change, or MOD_RES_ALLOW to allow it.
@@ -915,16 +916,6 @@ class CoreExport Module : public classbase, public usecountbase
 
        virtual ModResult OnNumeric(User* user, const Numeric::Numeric& numeric);
 
-       /** Called whenever a result from /WHO is about to be returned
-        * @param source The user running the /WHO query
-        * @param params The parameters to the /WHO query
-        * @param user The user that this line of the query is about
-        * @param memb The member shown in this line, NULL if no channel is in this line
-        * @param numeric Numeric to send; modifiable.
-        * @return MOD_RES_PASSTHRU to allow the line to be displayed, MOD_RES_DENY to hide it
-        */
-       virtual ModResult OnSendWhoLine(User* source, const std::vector<std::string>& params, User* user, Membership* memb, Numeric::Numeric& numeric);
-
        /** Called whenever a local user's IP is set for the first time, or when a local user's IP changes due to
         * a module like m_cgiirc changing it.
         * @param user The user whose IP is being set
@@ -1185,5 +1176,3 @@ class CoreExport ModuleManager : public fakederef<ModuleManager>
                return new y; \
        } \
        extern "C" DllExport const char inspircd_src_version[] = INSPIRCD_VERSION;
-
-#define COMMAND_INIT(c) MODULE_INIT(CommandModule<c>)