Do not send kills for unknown prefixes which are nicks.
This can happen harmlessly in particular if a SAVE and a nick-prefixed command crossed; then, due to nick changes and nick chasing, it easily causes ghosts that need a kill or split to disappear. Most commands use UID as prefix which does not have this problem and will destroy real ghosts soon enough.
This commit is contained in:
parent
e5cdec73ac
commit
3fde0c14a2
|
@ -533,7 +533,7 @@ remove_unknown(struct Client *client_p, char *lsender, char *lbuffer)
|
|||
{
|
||||
int slen = strlen(lsender);
|
||||
|
||||
/* meepfoo is a nickname (KILL)
|
||||
/* meepfoo is a nickname (ignore)
|
||||
* #XXXXXXXX is a UID (KILL)
|
||||
* #XX is a SID (SQUIT)
|
||||
* meep.foo is a server (SQUIT)
|
||||
|
@ -550,7 +550,7 @@ remove_unknown(struct Client *client_p, char *lsender, char *lbuffer)
|
|||
get_id(&me, client_p), lsender,
|
||||
lbuffer, client_p->name);
|
||||
}
|
||||
else
|
||||
else if(IsDigit(lsender[0]))
|
||||
sendto_one(client_p, ":%s KILL %s :%s (Unknown Client)",
|
||||
get_id(&me, client_p), lsender, me.name);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue