]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_inviteexception.cpp
dz is determined to crash your ircd :P
[user/henk/code/inspircd.git] / src / modules / m_inviteexception.cpp
index 26d36b09454546d3cbfbe126f1164d7361207bde..c689af32054fb5f3a688efce5b77866436bb6c8a 100644 (file)
  * ---------------------------------------------------
  */
 
-#include <string>
-#include <vector>
-#include "users.h"
-#include "channels.h"
-#include "modules.h"
-#include "mode.h"
+#include "inspircd.h"
 #include "u_listmode.h"
 
 /* $ModDesc: Provides support for the +I channel mode */
@@ -51,7 +46,7 @@ public:
                ie = new InviteException(ServerInstance);
                if (!ServerInstance->AddMode(ie, 'I'))
                        throw ModuleException("Could not add new modes!");
-               ServerInstance->PublishInterface("ChannelBanList", this);
+               ServerInstance->Modules->PublishInterface("ChannelBanList", this);
        }
 
        virtual void Implements(char* List)
@@ -103,8 +98,7 @@ public:
                                snprintf(mask, MAXBUF, "%s!%s@%s", LM->user->nick, LM->user->ident, LM->user->GetIPString());
                                for (modelist::iterator it = list->begin(); it != list->end(); it++)
                                {
-                                       if (ServerInstance->MatchText(LM->user->GetFullRealHost(), it->mask) || ServerInstance->MatchText(LM->user->GetFullHost(), it->mask) ||
-                                               (match(mask, it->mask.c_str(), true)))
+                                       if (match(LM->user->GetFullRealHost(), it->mask.c_str()) || match(LM->user->GetFullHost(), it->mask.c_str()) || (match(mask, it->mask.c_str(), true)))
                                        {
                                                // They match an entry
                                                return (char*)it->mask.c_str();
@@ -145,31 +139,8 @@ public:
        {
                ServerInstance->Modes->DelMode(ie);
                DELETE(ie);
-               ServerInstance->UnpublishInterface("ChannelBanList", this);
+               ServerInstance->Modules->UnpublishInterface("ChannelBanList", this);
        }
 };
 
-
-class ModuleInviteExceptionFactory : public ModuleFactory
-{
- public:
-       ModuleInviteExceptionFactory()
-       {
-       }
-       
-       ~ModuleInviteExceptionFactory()
-       {
-       }
-       
-       virtual Module * CreateModule(InspIRCd* Me)
-       {
-               return new ModuleInviteException(Me);
-       }
-       
-};
-
-
-extern "C" void * init_module( void )
-{
-       return new ModuleInviteExceptionFactory;
-}
+MODULE_INIT(ModuleInviteException)