diff options
-rw-r--r-- | Changes | 1 | ||||
-rw-r--r-- | src/botserv.c | 31 | ||||
-rw-r--r-- | version.log | 6 |
3 files changed, 23 insertions, 15 deletions
@@ -1,6 +1,7 @@ Anope Version S V N ------------------- Provided by Anope Dev. <dev@anope.org> - 2005 +01/16 F BS Badwords had a false positives if BSCaseSensitive wass enabled [#277] 01/15 F Updated typo in example.conf. [#279] Anope Version 1.7.7 diff --git a/src/botserv.c b/src/botserv.c index b2cec855e..040de4881 100644 --- a/src/botserv.c +++ b/src/botserv.c @@ -295,7 +295,7 @@ void botchanmsgs(User * u, ChannelInfo * ci, char *buf) } else if (bw->type == BW_SINGLE) { int len = strlen(bw->word); - if ((BSCaseSensitive && strstr(nbuf, bw->word)) + if ((BSCaseSensitive && !strcmp(nbuf, bw->word)) || (!BSCaseSensitive && (!stricmp(nbuf, bw->word)))) { mustkick = 1; @@ -303,12 +303,12 @@ void botchanmsgs(User * u, ChannelInfo * ci, char *buf) } else if ((strchr(nbuf, ' ') == nbuf + len) && ((BSCaseSensitive - && (strstr(nbuf, bw->word) == nbuf)) + && !strcmp(nbuf, bw->word)) || (!BSCaseSensitive && (stristr(nbuf, bw->word) == nbuf)))) { mustkick = 1; - } else + } else { if ((strrchr(nbuf, ' ') == nbuf + strlen(nbuf) - len - 1) && @@ -318,19 +318,22 @@ void botchanmsgs(User * u, ChannelInfo * ci, char *buf) || (!BSCaseSensitive && (stristr(nbuf, bw->word) == nbuf + strlen(nbuf) - len)))) { - mustkick = 1; - } else { - char *wordbuf = scalloc(len + 3, 1); + mustkick = 1; + } else { + char *wordbuf = scalloc(len + 3, 1); - wordbuf[0] = ' '; - wordbuf[len + 1] = ' '; - wordbuf[len + 2] = '\0'; - memcpy(wordbuf + 1, bw->word, len); + wordbuf[0] = ' '; + wordbuf[len + 1] = ' '; + wordbuf[len + 2] = '\0'; + memcpy(wordbuf + 1, bw->word, len); - if ((BSCaseSensitive && (strstr(nbuf, wordbuf))) - || (!BSCaseSensitive - && (stristr(nbuf, wordbuf)))) - mustkick = 1; + if ((BSCaseSensitive + && (strstr(nbuf, wordbuf))) + || (!BSCaseSensitive + && (stristr(nbuf, wordbuf)))) { + mustkick = 1; + } + } } } else if (bw->type == BW_START) { int len = strlen(bw->word); diff --git a/version.log b/version.log index c5a12a136..5a92b5a56 100644 --- a/version.log +++ b/version.log @@ -8,10 +8,14 @@ VERSION_MAJOR="1" VERSION_MINOR="7" VERSION_PATCH="7" -VERSION_BUILD="539" +VERSION_BUILD="540" # $Log$ # +# BUILD : 1.7.7 (540) +# BUGS : 277 +# NOTES : BotServ Badwords (START) would return a false positivie when BSCaseSensitive is enabled +# # BUILD : 1.7.7 (539) # BUGS : 279 # NOTES : Fixed typo in example.conf... |