]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_sasl.cpp
Add initial query support to m_mysql [patch by Athenon]
[user/henk/code/inspircd.git] / src / modules / m_sasl.cpp
index 08f1363741fa8ab4e3509d68dfb8428b87de6fd7..a58d4dcdcfd529e7117cc03854f1e0186d909cd5 100644 (file)
@@ -27,7 +27,6 @@ class SaslAuthenticator : public classbase
 {
  private:
        InspIRCd *ServerInstance;
-       Module *Creator;
        std::string agent;
        User *user;
        SaslState state;
@@ -36,7 +35,7 @@ class SaslAuthenticator : public classbase
 
  public:
        SaslAuthenticator(User *user_, std::string method, InspIRCd *instance, Module *ctor)
-               : ServerInstance(instance), Creator(ctor), user(user_), state(SASL_INIT), state_announced(false)
+               : ServerInstance(instance), user(user_), state(SASL_INIT), state_announced(false)
        {
                this->user->Extend("sasl_authenticator", this);
 
@@ -158,11 +157,9 @@ class SaslAuthenticator : public classbase
 
 class CommandAuthenticate : public Command
 {
-       Module* Creator;
  public:
-       CommandAuthenticate (InspIRCd* Instance, Module* creator) : Command(Instance,"AUTHENTICATE", 0, 1, true), Creator(creator)
+       CommandAuthenticate (InspIRCd* Instance, Module* Creator) : Command(Instance, Creator, "AUTHENTICATE", 0, 1, true)
        {
-               this->source = "m_sasl.so";
        }
 
        CmdResult Handle (const std::vector<std::string>& parameters, User *user)
@@ -175,7 +172,7 @@ class CommandAuthenticate : public Command
 
                        SaslAuthenticator *sasl;
                        if (!(user->GetExt("sasl_authenticator", sasl)))
-                               sasl = new SaslAuthenticator(user, parameters[0], ServerInstance, Creator);
+                               sasl = new SaslAuthenticator(user, parameters[0], ServerInstance, creator);
                        else if (sasl->SendClientMessage(parameters) == false)  // IAL abort extension --nenolod
                                delete sasl;
                }
@@ -185,11 +182,9 @@ class CommandAuthenticate : public Command
 
 class CommandSASL : public Command
 {
-       Module* Creator;
  public:
-       CommandSASL(InspIRCd* Instance, Module* creator) : Command(Instance, "SASL", 0, 2), Creator(creator)
+       CommandSASL(InspIRCd* Instance, Module* Creator) : Command(Instance, Creator, "SASL", 0, 2)
        {
-               this->source = "m_sasl.so";
                this->disabled = true; // should not be called by users
        }
 
@@ -235,7 +230,7 @@ class ModuleSASL : public Module
                        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!");
        }
 
-       virtual int OnUserRegister(User *user)
+       virtual ModResult OnUserRegister(User *user)
        {
                SaslAuthenticator *sasl_;
                if (user->GetExt("sasl_authenticator", sasl_))
@@ -245,7 +240,7 @@ class ModuleSASL : public Module
                        user->Shrink("sasl_authenticator");
                }
 
-               return 0;
+               return MOD_RES_PASSTHRU;
        }
 
        virtual void OnCleanup(int target_type, void *item)