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

specify FAIL NICK NICKNAME_RESERVED #498

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

slingamn
Copy link
Contributor

@slingamn slingamn commented Jun 4, 2023

This is used in Ergo, e.g.

https://github.com/ergochat/ergo/blob/ca03a42dff12cc7dd3d622e1fd8dbb78447be810/irc/nickname.go#L49

In general Ergo sends standard replies without checking the standard-replies capability, but I'm associating this here with the standard-replies spec.

@slingamn
Copy link
Contributor Author

slingamn commented Jun 4, 2023

Looking at the rendered page, associating this with the standard-replies spec seems inappropriate.

@emersion
Copy link
Contributor

emersion commented Jun 4, 2023

How does this relate to ERR_NICKLOCKED?

@progval
Copy link
Contributor

progval commented Jun 4, 2023

and/or ERR_ERRONEUSNICKNAME

@slingamn
Copy link
Contributor Author

slingamn commented Jun 4, 2023

In Ergo, this is sent alongside ERR_NICKNAMEINUSE. I'm not familiar with how those other numerics are used in practice. (Are they sent by any major extant implementations?)

@slingamn
Copy link
Contributor Author

slingamn commented Jun 4, 2023

Sorry, correction, I am familiar with ERR_ERRONEUSNICKNAME and its uses. It seems inappropriate here because the client might conclude that the nickname is actually invalid, whereas typically it's valid (and could be claimed by the current client, given the right authentication).

@slingamn
Copy link
Contributor Author

slingamn commented Jun 4, 2023

FWIW Modern documents ERR_NICKLOCKED as having a different meaning:

This numeric indicates that SASL authentication failed because the account is currently locked out, held, or otherwise administratively made unavailable. For more information on this numeric, see the IRCv3 sasl-3.1 extension.

I didn't know about this because Ergo conflates this case with ERR_SASLFAIL [shrug]

@slingamn
Copy link
Contributor Author

slingamn commented Jun 4, 2023

Another reason to prefer ERR_NICKNAMEINUSE plus FAIL over ERR_ERRONEUSNICKNAME: like other cases of ERR_NICKNAMEINUSE, this condition can typically be fixed by growing a tail, which is not typically the case for nicknames that are "inherently" invalid (contain invalid characters, mixed scripts, etc.)

@emersion
Copy link
Contributor

emersion commented Jun 5, 2023

Right, that makes sense to me!

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

Successfully merging this pull request may close these issues.

None yet

3 participants