summaryrefslogtreecommitdiff
path: root/modules/commands/os_forbid.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2013-09-14 04:18:56 -0400
committerAdam <Adam@anope.org>2013-09-27 19:10:49 -0400
commitdcb3ff7d343f4ac2db55def9895ed459c1e3f417 (patch)
tree9092dffc3e3a294dc2462b940da8a38e0dbba95d /modules/commands/os_forbid.cpp
parent1107b92699407f80fcfa9e12a491468d6f57b1d9 (diff)
Dont send BURST twice on inspircd
Drop matching nicks on forbid.
Diffstat (limited to 'modules/commands/os_forbid.cpp')
-rw-r--r--modules/commands/os_forbid.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/modules/commands/os_forbid.cpp b/modules/commands/os_forbid.cpp
index 0099348b0..ec498a3ba 100644
--- a/modules/commands/os_forbid.cpp
+++ b/modules/commands/os_forbid.cpp
@@ -172,9 +172,29 @@ class CommandOSForbid : public Command
switch (ftype)
{
case FT_NICK:
+ {
+ int na_matches = 0;
+
for (user_map::const_iterator it = UserListByNick.begin(); it != UserListByNick.end(); ++it)
module->OnUserNickChange(it->second, "");
+
+ for (nickalias_map::const_iterator it = NickAliasList->begin(), it_end = NickAliasList->end(); it != it_end;)
+ {
+ NickAlias *na = it->second;
+ ++it;
+
+ d = this->fs->FindForbid(na->nick, FT_NICK);
+ if (d == NULL)
+ continue;
+
+ ++na_matches;
+
+ delete na;
+ }
+
+ source.Reply(_("\2%d\2 nicknames dropped."), na_matches);
break;
+ }
case FT_CHAN:
{
int chan_matches = 0, ci_matches = 0;