send_linebuf_remote(): Remove broken and useless ghost check that can never happen.

Reasoning why it never does anything:
- the to = to->from line makes sure that MyConnect(to)
- then IsPerson(to) && (to == from->from) implies that to == from
- so MyClient(to)
- which cannot happen because it also wants that !MyClient(from)

Originally, the to = to->from line was below, and it did a
fake direction check, killing a client if servers could be
confused about it. The kill cannot do any good with TS6.

The fake direction check is and was performed by the
callers of send_linebuf_remote().
This commit is contained in:
Jilles Tjoelker 2008-01-17 01:06:32 +01:00
parent 19807b5b97
commit 8d0d947de8

View file

@ -124,30 +124,7 @@ send_linebuf_remote(struct Client *to, struct Client *from, buf_head_t *linebuf)
if(to->from) if(to->from)
to = to->from; to = to->from;
/* test for fake direction */ /* we assume the caller has already tested for fake direction */
if(!MyClient(from) && IsPerson(to) && (to == from->from))
{
if(IsServer(from))
{
sendto_realops_snomask(SNO_GENERAL, L_ALL,
"Send message to %s[%s] dropped from %s(Fake Dir)",
to->name, to->from->name, from->name);
return;
}
sendto_realops_snomask(SNO_GENERAL, L_ALL,
"Ghosted: %s[%s@%s] from %s[%s@%s] (%s)",
to->name, to->username, to->host,
from->name, from->username, from->host, to->from->name);
kill_client_serv_butone(NULL, to, "%s (%s[%s@%s] Ghosted %s)",
me.name, to->name, to->username,
to->host, to->from->name);
to->flags |= FLAGS_KILLED;
exit_client(NULL, to, &me, "Ghosted client");
return;
}
_send_linebuf(to, linebuf); _send_linebuf(to, linebuf);
return; return;