]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Removed dependency upon strcasestr()
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Mon, 25 Apr 2005 15:38:10 +0000 (15:38 +0000)
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Mon, 25 Apr 2005 15:38:10 +0000 (15:38 +0000)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1185 e03df62e-2008-0410-955e-edbf42e46eb7

src/modules/m_chanfilter.cpp

index 24cec2b9972904d8fc5ce076976c7b94d802706a..3f343202c3dc70f3c094b694371f6ce4b302e01d 100644 (file)
@@ -84,12 +84,16 @@ class ModuleChanFilter : public Module
 
         virtual int ProcessMessages(userrec* user,chanrec* chan,std::string &text)
         {
+               char buffer[MAXBUF];
+               strlcpy(buffer,text.c_str(),MAXBUF);
+               for (int j = 0; j < strlen(buffer); j++)
+                       buffer[j] = tolower(buffer[j]);
                SpamList* spamlist = (SpamList*)chan->GetExt("spam_list");
                if (spamlist)
                {
                        for (SpamList::iterator i = spamlist->begin(); i != spamlist->end(); i++)
                        {
-                               if (strcasestr(text.c_str(),i->c_str()))
+                               if (strstr(text.c_str(),i->c_str()))
                                {
                                        WriteServ(user->fd,"936 %s %s :Your message contained a censored word, and was blocked",user->nick, chan->name);
                                        return 1;
@@ -122,6 +126,10 @@ class ModuleChanFilter : public Module
                if ((modechar == 'g') && (type == MT_CHANNEL))
                {
                        chanrec* chan = (chanrec*)target;
+
+                       for (int j = 0; j < strlen(params[0]); j++)
+                               params[0][j] = tolower(params[0][j]);
+
                        std::string param = params[0];
                
                        if (mode_on)