Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

registered clients do not receive 433 ERR_NICKNAMEINUSE when trying to take a registered nickname #2135

Closed
slingamn opened this issue Mar 10, 2024 · 0 comments

Comments

@slingamn
Copy link
Member

Reported by savoyard:

ergo/irc/nickname.go

Lines 44 to 49 in 681e8b1

} else if err == errNicknameReserved {
if !isSanick {
if !client.registered {
rb.Add(nil, server.name, ERR_NICKNAMEINUSE, details.nick, utils.SafeErrorParam(nickname), client.t("Nickname is reserved by a different account"))
}
rb.Add(nil, server.name, "FAIL", "NICK", "NICKNAME_RESERVED", utils.SafeErrorParam(nickname), client.t("Nickname is reserved by a different account"))

See #1594 and #1599 for some context on this decision, although the rationale is still not completely clear.

The current behavior is especially weird because the 433 is omitted even when the nickname is actually in use (because SetNick preferentially returns errNicknameReserved over errNicknameInUse, which is an implementation detail). We might want to change the behavior in the case when the nickname is actually in use; we might want to change it in general (would that cause problems for current versions of Limnoria?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant