Use ERR_NOPRIVS when an oper is not allowed to see admin-only /stats.

This includes opers without the admin flag and admins on other servers.
This commit is contained in:
Jilles Tjoelker 2008-03-29 23:09:45 +01:00
parent 9b4ce61d2a
commit ff74c93aee
1 changed files with 7 additions and 2 deletions

View File

@ -226,13 +226,18 @@ m_stats(struct Client *client_p, struct Client *source_p, int parc, const char *
/* Called for remote clients and for local opers, so check need_admin
* and need_oper
*/
if((stats_cmd_table[i].need_admin && !IsOperAdmin (source_p)) ||
(stats_cmd_table[i].need_oper && !IsOper (source_p)))
if(stats_cmd_table[i].need_oper && !IsOper(source_p))
{
sendto_one_numeric(source_p, ERR_NOPRIVILEGES,
form_str (ERR_NOPRIVILEGES));
break;
}
if(stats_cmd_table[i].need_admin && !IsOperAdmin(source_p))
{
sendto_one(source_p, form_str(ERR_NOPRIVS),
me.name, source_p->name, "admin");
break;
}
/* Blah, stats L needs the parameters, none of the others do.. */
if(statchar == 'L' || statchar == 'l')