]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_sasl.cpp
Run configure -update on all svn/git changes
[user/henk/code/inspircd.git] / src / modules / m_sasl.cpp
index 069fbdec8076dcabaf5c723d64f0e84f507f1a99..696b3d80949df38f3ee3d02b71477b80b6a88656 100644 (file)
@@ -152,9 +152,10 @@ class CommandAuthenticate : public Command
  public:
        SimpleExtItem<SaslAuthenticator>& authExt;
        GenericCap& cap;
-       CommandAuthenticate (InspIRCd* Instance, Module* Creator, SimpleExtItem<SaslAuthenticator>& ext, GenericCap& Cap)
-               : Command(Instance, Creator, "AUTHENTICATE", 0, 1, true), authExt(ext), cap(Cap)
+       CommandAuthenticate(Module* Creator, SimpleExtItem<SaslAuthenticator>& ext, GenericCap& Cap)
+               : Command(Creator, "AUTHENTICATE", 1), authExt(ext), cap(Cap)
        {
+               works_before_reg = true;
        }
 
        CmdResult Handle (const std::vector<std::string>& parameters, User *user)
@@ -182,8 +183,7 @@ class CommandSASL : public Command
 {
  public:
        SimpleExtItem<SaslAuthenticator>& authExt;
-       CommandSASL(InspIRCd* Instance, Module* Creator, SimpleExtItem<SaslAuthenticator>& ext)
-               : Command(Instance, Creator, "SASL", 0, 2), authExt(ext)
+       CommandSASL(Module* Creator, SimpleExtItem<SaslAuthenticator>& ext) : Command(Creator, "SASL", 2), authExt(ext)
        {
                this->disabled = true; // should not be called by users
        }
@@ -224,7 +224,7 @@ class ModuleSASL : public Module
        CommandSASL sasl;
  public:
        ModuleSASL(InspIRCd* Me)
-               : Module(Me), authExt("sasl_auth", this), cap(this, "sasl"), auth(Me, this, authExt, cap), sasl(Me, this, authExt)
+               : Module(Me), authExt("sasl_auth", this), cap(this, "sasl"), auth(this, authExt, cap), sasl(this, authExt)
        {
                Implementation eventlist[] = { I_OnEvent, I_OnUserRegister, I_OnPostConnect, I_OnUserDisconnect, I_OnCleanup };
                ServerInstance->Modules->Attach(eventlist, this, 5);
@@ -232,6 +232,7 @@ class ModuleSASL : public Module
                ServerInstance->AddCommand(&auth);
                ServerInstance->AddCommand(&sasl);
 
+               Extensible::Register(&authExt);
                if (!ServerInstance->Modules->Find("m_services_account.so") || !ServerInstance->Modules->Find("m_cap.so"))
                        ServerInstance->Logs->Log("m_sasl", DEFAULT, "WARNING: m_services_account.so and m_cap.so are not loaded! m_sasl.so will NOT function correctly until these two modules are loaded!");
        }
@@ -254,7 +255,7 @@ class ModuleSASL : public Module
 
        Version GetVersion()
        {
-               return Version("$Id$",VF_VENDOR,API_VERSION);
+               return Version("Provides support for IRC Authentication Layer (aka: atheme SASL) via AUTHENTICATE.",VF_VENDOR,API_VERSION);
        }
 
        void OnEvent(Event *ev)