]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_passforward.cpp
Change allocation of UserManager::clientlist to be physically part of the object...
[user/henk/code/inspircd.git] / src / modules / m_passforward.cpp
index f46e79c0f2c7b709f9aaac764f3922926635de7d..b5696c8f4361da33488a67ada344f24cb66e3fa0 100644 (file)
  */
 
 
-/* $ModDesc: Forwards a password users can send on connect (for example for NickServ identification). */
-
 #include "inspircd.h"
 
 class ModulePassForward : public Module
 {
- private:
        std::string nickrequired, forwardmsg, forwardcmd;
 
  public:
-       void init()
-       {
-               OnRehash(NULL);
-               Implementation eventlist[] = { I_OnPostConnect, I_OnRehash };
-               ServerInstance->Modules->Attach(eventlist, this, 2);
-       }
-
-       Version GetVersion()
+       Version GetVersion() CXX11_OVERRIDE
        {
                return Version("Sends server password to NickServ", VF_VENDOR);
        }
 
-       void OnRehash(User* user)
+       void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE
        {
                ConfigTag* tag = ServerInstance->Config->ConfValue("passforward");
                nickrequired = tag->getString("nick", "NickServ");
@@ -82,7 +72,7 @@ class ModulePassForward : public Module
                }
        }
 
-       virtual void OnPostConnect(User* ruser)
+       void OnPostConnect(User* ruser) CXX11_OVERRIDE
        {
                LocalUser* user = IS_LOCAL(ruser);
                if (!user || user->password.empty())
@@ -91,8 +81,8 @@ class ModulePassForward : public Module
                if (!nickrequired.empty())
                {
                        /* Check if nick exists and its server is ulined */
-                       User* u = ServerInstance->FindNick(nickrequired.c_str());
-                       if (!u || !ServerInstance->ULine(u->server))
+                       User* u = ServerInstance->FindNick(nickrequired);
+                       if (!u || !u->server->IsULine())
                                return;
                }