diff options
author | rburchell <rburchell@5417fbe8-f217-4b02-8779-1006273d7864> | 2009-02-12 00:00:50 +0000 |
---|---|---|
committer | rburchell <rburchell@5417fbe8-f217-4b02-8779-1006273d7864> | 2009-02-12 00:00:50 +0000 |
commit | 58b0279f7f2eda9154373af0a7d4b0cb73b1baf8 (patch) | |
tree | a5f69976639c3c7bfc24d282259c258c8ffa7cac /src/core/cs_kick.c | |
parent | a512f7cdd7e5f9d2e408b77cc41b526a604d60f8 (diff) |
Audit cs_kick, cs_list, cs_logout, cs_modes.
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2020 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/core/cs_kick.c')
-rw-r--r-- | src/core/cs_kick.c | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/src/core/cs_kick.c b/src/core/cs_kick.c index 9ba68cdcb..f2895d1aa 100644 --- a/src/core/cs_kick.c +++ b/src/core/cs_kick.c @@ -27,7 +27,7 @@ void myChanServHelp(User * u) class CommandCSKick : public Command { public: - CommandCSKick() : Command("KICK", 1, 3) + CommandCSKick() : Command("KICK", 2, 3) { } @@ -36,8 +36,14 @@ class CommandCSKick : public Command { const char *chan = params[0].c_str(); const char *target = params[1].c_str(); - params[2].resize(200); - const char *reason = params[2].c_str(); + const char *reason = NULL; + + if (params.size() > 2) + { + params[2].resize(200); + reason = params[2].c_str(); + } + Channel *c; ChannelInfo *ci; User *u2; @@ -48,10 +54,6 @@ class CommandCSKick : public Command reason = "Requested"; } - if (!target) { - target = u->nick; - } - is_same = (target == u->nick) ? 1 : (stricmp(target, u->nick) == 0); if (!(c = findchan(chan))) { @@ -92,9 +94,15 @@ class CommandCSKick : public Command bool OnHelp(User *u, const std::string &subcommand) { - notice_lang(s_ChanServ, u, CHAN_HELP_KICK); + notice_lang(s_ChanServ, u, CHAN_HELP_KICK); return true; } + + void OnSyntaxError(User *u) + { + // XXX: best I can do for now, fixme + notice_lang(s_ChanServ, u, CHAN_X_NOT_IN_USE, ""); + } }; class CSKick : public Module |