diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/bs_fantasy_unban.c | 71 | ||||
-rw-r--r-- | src/modules/cs_enforce.c | 2 | ||||
-rw-r--r-- | src/modules/hs_request.c | 11 |
3 files changed, 8 insertions, 76 deletions
diff --git a/src/modules/bs_fantasy_unban.c b/src/modules/bs_fantasy_unban.c deleted file mode 100644 index fae8bc20c..000000000 --- a/src/modules/bs_fantasy_unban.c +++ /dev/null @@ -1,71 +0,0 @@ -/* BotServ core fantasy functions - * - * (C) 2003-2009 Anope Team - * Contact us at team@anope.org - * - * Please read COPYING and README for further details. - * - * Based on the original code of Epona by Lara. - * Based on the original code of Services by Andy Church. - * - * $Id$ - * - */ -/*************************************************************************/ - -#include "module.h" - -int do_fantasy(int argc, char **argv); - -class BSFantasyUnban : public Module -{ - public: - BSFantasyUnban(const std::string &modname, const std::string &creator) : Module(modname, creator) - { - EvtHook *hook; - - this->SetAuthor("Anope"); - this->SetVersion("$Id$"); - this->SetType(CORE); - - hook = createEventHook(EVENT_BOT_FANTASY, do_fantasy); - this->AddEventHook(hook); - } -}; - -/** - * Handle unban fantasy command. - * @param argc Argument count - * @param argv Argument list - * @return MOD_CONT or MOD_STOP - **/ -int do_fantasy(int argc, char **argv) -{ - User *u; - ChannelInfo *ci; - char *target = NULL; - - if (argc < 3) - return MOD_CONT; - - if (stricmp(argv[0], "unban") == 0) { - u = finduser(argv[1]); - ci = cs_findchan(argv[2]); - if (!u || !ci || !check_access(u, ci, CA_UNBAN)) - return MOD_CONT; - - if (argc >= 4) - target = myStrGetToken(argv[3], ' ', 0); - if (!target) - common_unban(ci, u->nick); - else - common_unban(ci, target); - - /* free target if needed (#852) */ - if (target) delete [] target; - } - - return MOD_CONT; -} - -MODULE_INIT("bs_fantasy_unban", BSFantasyUnban) diff --git a/src/modules/cs_enforce.c b/src/modules/cs_enforce.c index 55990e06a..8335b1758 100644 --- a/src/modules/cs_enforce.c +++ b/src/modules/cs_enforce.c @@ -192,7 +192,7 @@ class CommandCSEnforce : public Command if (!what || !stricmp(what, "SET")) { this->DoSet(c); - me->NoticeLang(s_ChanServ, u, LNG_CHAN_RESPONSE, what); + me->NoticeLang(s_ChanServ, u, LNG_CHAN_RESPONSE, what ? what : "SET"); } else if (!stricmp(what, "MODES")) { diff --git a/src/modules/hs_request.c b/src/modules/hs_request.c index ab9044737..a57e09282 100644 --- a/src/modules/hs_request.c +++ b/src/modules/hs_request.c @@ -82,7 +82,7 @@ class CommandHSRequest : public Command CommandReturn Execute(User *u, std::vector<std::string> ¶ms) { char *nick; - const char *rawhostmask = params[1].c_str(); + const char *rawhostmask = params[0].c_str(); char hostmask[HOSTMAX]; NickAlias *na; int32 tmp_time; @@ -359,7 +359,7 @@ class HSListBase : public Command return MOD_CONT; } public: - HSListBase(const std::string &cmd, int min, int max) : Command("LIST", 1, 1) + HSListBase(const std::string &cmd, int min, int max) : Command(cmd, min, max) { } @@ -372,13 +372,16 @@ class HSListBase : public Command class CommandHSList : public HSListBase { public: - CommandHSList() : HSListBase("LIST", 1, 1) + CommandHSList() : HSListBase("LIST", 0, 1) { } CommandReturn Execute(User *u, std::vector<std::string> ¶ms) { - const char *key = params[0].c_str(); + const char *key = params.size() ? params[0].c_str() : NULL; + + if (!key) + return MOD_CONT; if (stricmp(key, "+req")) return MOD_CONT; |