Stop griefing through taunting while hiding behind CALLERID.
This shouldn't provide any way for a client to get on a CALLERID list without authorization, as if a client is +g already, a CTCP request, for example, won't be replied to.
This commit is contained in:
parent
545f0a0f07
commit
0770c9936e
1 changed files with 11 additions and 0 deletions
|
@ -726,6 +726,17 @@ msg_client(int p_or_n, const char *command,
|
||||||
sendto_one_numeric(source_p, RPL_AWAY, form_str(RPL_AWAY),
|
sendto_one_numeric(source_p, RPL_AWAY, form_str(RPL_AWAY),
|
||||||
target_p->name, target_p->user->away);
|
target_p->name, target_p->user->away);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* XXX: Controversial? Allow target users to send replies through a +g.
|
||||||
|
* Rationale is that people can presently use +g as a way to taunt users,
|
||||||
|
* e.g. harass them and hide behind +g as a way of griefing. --nenolod
|
||||||
|
*/
|
||||||
|
if(MyClient(source_p) && IsSetCallerId(source_p) && !accept_message(target_p, source_p))
|
||||||
|
{
|
||||||
|
rb_dlinkAddAlloc(target_p, &source_p->localClient->allow_list);
|
||||||
|
rb_dlinkAddAlloc(source_p, &target_p->on_allow_list);
|
||||||
|
}
|
||||||
|
|
||||||
if(MyClient(target_p))
|
if(MyClient(target_p))
|
||||||
{
|
{
|
||||||
/* XXX Controversial? allow opers always to send through a +g */
|
/* XXX Controversial? allow opers always to send through a +g */
|
||||||
|
|
Loading…
Reference in a new issue