From dcb3ff7d343f4ac2db55def9895ed459c1e3f417 Mon Sep 17 00:00:00 2001 From: Adam Date: Sat, 14 Sep 2013 04:18:56 -0400 Subject: Dont send BURST twice on inspircd Drop matching nicks on forbid. --- modules/commands/os_forbid.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'modules/commands') 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; -- cgit