No_Privileges(): handle forwarded messages.

This commit is contained in:
Alexander Barton 2008-07-22 18:33:44 +02:00
parent 7d6de7c352
commit 45b1a45c97
1 changed files with 16 additions and 4 deletions

View File

@ -73,10 +73,22 @@ Check_Oper(CLIENT * Client)
static bool
No_Privileges(CLIENT * Client, REQUEST * Req)
{
Log(LOG_NOTICE, "No privileges: client \"%s\", command \"%s\"",
Client_Mask(Client), Req->command);
return IRC_WriteStrClient(Client, ERR_NOPRIVILEGES_MSG,
Client_ID(Client));
CLIENT *from = NULL;
if (Req->prefix)
from = Client_Search(Req->prefix);
if (from) {
Log(LOG_NOTICE, "No privileges: client \"%s\" (%s), command \"%s\"",
Req->prefix, Client_Mask(Client), Req->command);
return IRC_WriteStrClient(from, ERR_NOPRIVILEGES_MSG,
Client_ID(from));
} else {
Log(LOG_NOTICE, "No privileges: client \"%s\", command \"%s\"",
Client_Mask(Client), Req->command);
return IRC_WriteStrClient(Client, ERR_NOPRIVILEGES_MSG,
Client_ID(Client));
}
} /* PermissionDenied */