X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_noctcp.cpp;h=05dbd69cab610daf6eea1115080c99296ec1fc4f;hb=e9d1efc1ae29ee86b3c2a42bf56531afac7add6d;hp=0e9120407d137303e0881aa8443c86427e1c1bd6;hpb=3a554ef1e9be9dbcf3de3301a4a6c2938d643bea;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_noctcp.cpp b/src/modules/m_noctcp.cpp index 0e9120407..05dbd69ca 100644 --- a/src/modules/m_noctcp.cpp +++ b/src/modules/m_noctcp.cpp @@ -11,15 +11,13 @@ * --------------------------------------------------- */ +#include "inspircd.h" #include "users.h" #include "channels.h" #include "modules.h" -#include "inspircd.h" /* $ModDesc: Provides support for unreal-style channel mode +c */ - - class NoCTCP : public ModeHandler { public: @@ -56,11 +54,12 @@ class ModuleNoCTCP : public Module public: ModuleNoCTCP(InspIRCd* Me) - : Module::Module(Me) + : Module(Me) { nc = new NoCTCP(ServerInstance); - ServerInstance->AddMode(nc, 'C'); + if (!ServerInstance->AddMode(nc, 'C')) + throw ModuleException("Could not add new modes!"); } void Implements(char* List) @@ -75,7 +74,7 @@ class ModuleNoCTCP : public Module virtual int OnUserPreNotice(userrec* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list) { - if (target_type == TYPE_CHANNEL) + if ((target_type == TYPE_CHANNEL) && (IS_LOCAL(user))) { chanrec* c = (chanrec*)dest; if (c->IsModeSet('C')) @@ -105,28 +104,4 @@ class ModuleNoCTCP : public Module } }; - -class ModuleNoCTCPFactory : public ModuleFactory -{ - public: - ModuleNoCTCPFactory() - { - } - - ~ModuleNoCTCPFactory() - { - } - - virtual Module * CreateModule(InspIRCd* Me) - { - return new ModuleNoCTCP(Me); - } - -}; - - -extern "C" void * init_module( void ) -{ - return new ModuleNoCTCPFactory; -} - +MODULE_INIT(ModuleNoCTCP)