Commits

William Pitcock  committed fc3af1e

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.

  • Participants
  • Parent commits 8199c80

Comments (0)

Files changed (1)

File modules/core/m_message.c

 		sendto_one_numeric(source_p, RPL_AWAY, form_str(RPL_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 (IsSetNoCTCP(target_p) && p_or_n != NOTICE && *text == '\001' && strncasecmp(text + 1, "ACTION", 6))