mirror of
https://github.com/anope/anope.git
synced 2026-07-08 00:03:13 +02:00
Rewrote the config reader to better handle invalid configs.
This prevents Anope from exploding when /os reload has errors.
This commit is contained in:
@@ -33,9 +33,9 @@ class CommandOSNOOP : public Command
|
||||
ircdproto->SendSVSNOOP(server, 1);
|
||||
|
||||
reason = "NOOP command used by " + u->nick;
|
||||
if (Config.WallOSNoOp)
|
||||
if (Config->WallOSNoOp)
|
||||
ircdproto->SendGlobops(OperServ, "\2%s\2 used NOOP on \2%s\2", u->nick.c_str(), server.c_str());
|
||||
notice_lang(Config.s_OperServ, u, OPER_NOOP_SET, server.c_str());
|
||||
notice_lang(Config->s_OperServ, u, OPER_NOOP_SET, server.c_str());
|
||||
|
||||
/* Kill all the IRCops of the server */
|
||||
for (user_map::const_iterator it = UserListByNick.begin(), it_end = UserListByNick.end(); it != it_end; )
|
||||
@@ -44,13 +44,13 @@ class CommandOSNOOP : public Command
|
||||
++it;
|
||||
|
||||
if (u2 && is_oper(u2) && Anope::Match(u2->server->GetName(), server, true))
|
||||
kill_user(Config.s_OperServ, u2->nick, reason);
|
||||
kill_user(Config->s_OperServ, u2->nick, reason);
|
||||
}
|
||||
}
|
||||
else if (cmd.equals_ci("REVOKE"))
|
||||
{
|
||||
ircdproto->SendSVSNOOP(server, 0);
|
||||
notice_lang(Config.s_OperServ, u, OPER_NOOP_REVOKE, server.c_str());
|
||||
notice_lang(Config->s_OperServ, u, OPER_NOOP_REVOKE, server.c_str());
|
||||
}
|
||||
else
|
||||
this->OnSyntaxError(u, "");
|
||||
@@ -59,18 +59,18 @@ class CommandOSNOOP : public Command
|
||||
|
||||
bool OnHelp(User *u, const Anope::string &subcommand)
|
||||
{
|
||||
notice_help(Config.s_OperServ, u, OPER_HELP_NOOP);
|
||||
notice_help(Config->s_OperServ, u, OPER_HELP_NOOP);
|
||||
return true;
|
||||
}
|
||||
|
||||
void OnSyntaxError(User *u, const Anope::string &subcommand)
|
||||
{
|
||||
syntax_error(Config.s_OperServ, u, "NOOP", OPER_NOOP_SYNTAX);
|
||||
syntax_error(Config->s_OperServ, u, "NOOP", OPER_NOOP_SYNTAX);
|
||||
}
|
||||
|
||||
void OnServHelp(User *u)
|
||||
{
|
||||
notice_lang(Config.s_OperServ, u, OPER_HELP_CMD_NOOP);
|
||||
notice_lang(Config->s_OperServ, u, OPER_HELP_CMD_NOOP);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user