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
659dbfa585
commit
5b71b8ec50
|
@ -783,6 +783,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))
|
||||||
{
|
{
|
||||||
if (IsSetNoCTCP(target_p) && p_or_n != NOTICE && *text == '\001' && strncasecmp(text + 1, "ACTION", 6))
|
if (IsSetNoCTCP(target_p) && p_or_n != NOTICE && *text == '\001' && strncasecmp(text + 1, "ACTION", 6))
|
||||||
|
|
Loading…
Reference in New Issue