X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fmodules.h;h=4f363b2a606d754f3d57ff5faa6420968917bf55;hb=503ba19ec18ded4d1b373c799b795e39262088e3;hp=a9db6919cc9c2e5d00a5d02c7605732bb31e5846;hpb=e3bcf95ee996c058c73879c12ac5a487f8dcdf46;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/modules.h b/include/modules.h index a9db6919c..4f363b2a6 100644 --- a/include/modules.h +++ b/include/modules.h @@ -558,17 +558,14 @@ class CoreExport Module : public classbase, public usecountbase */ virtual void OnBuildNeighborList(User* source, IncludeChanList& include_c, std::map& exceptions); - /** Called before any nickchange, local or remote. This can be used to implement Q-lines etc. - * Please note that although you can see remote nickchanges through this function, you should - * NOT make any changes to the User if the user is a remote user as this may cause a desnyc. - * check user->server before taking any action (including returning nonzero from the method). + /** Called before local nickname changes. This can be used to implement Q-lines etc. * If your method returns nonzero, the nickchange is silently forbidden, and it is down to your * module to generate some meaninful output. * @param user The username changing their nick * @param newnick Their new nickname * @return 1 to deny the change, 0 to allow */ - virtual ModResult OnUserPreNick(User* user, const std::string &newnick); + virtual ModResult OnUserPreNick(LocalUser* user, const std::string& newnick); /** Called after any PRIVMSG sent from a user. * The dest variable contains a User* if target_type is TYPE_USER and a Channel* @@ -1081,7 +1078,7 @@ typedef IntModuleList::iterator EventHandlerIter; /** ModuleManager takes care of all things module-related * in the core. */ -class CoreExport ModuleManager +class CoreExport ModuleManager : public fakederef { public: typedef std::vector ServiceList;