Skip to content

Add handler for 437 ERR_UNAVAILRESOURCE. #30

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Add handler for 437 ERR_UNAVAILRESOURCE. #30

wants to merge 1 commit into from

Conversation

mindless2112
Copy link
Contributor

The server closes your connection if you are in the process of connecting and do not supply another nickname.

@JakobOvrum
Copy link
Owner

I've ever seen 437 sent during authentication, so I can't comment on this one. Ping @ShadowNinja?

@ShadowNinja
Copy link
Collaborator

@JakobOvrum: Based on RFC2812 this is sent in response to NICK if the nickname is protected by delay-based nickname protection. It doesn't specify if this is sent in the registration phase. Delay-based nickname protection mechanisms aren't used much anymore, but this might be sent for other related reasons.

@mindless2112: Do you have examples of current IRCds that send this numeric?

@mindless2112
Copy link
Contributor Author

@ShadowNinja ircd-seven-1.1.3 (Freenode) sends this after a few times of failing to identify for a protected nickname.

Normally when changing to a protected nickname (NickServ's "set enforce on" command), you get a short grace period to identify, after which the server forces a nickname change upon you. But if you don't identify several times within some short period of time (seems to be several minutes) then the server does not give a grace period for that nickname but instead replies with 437. In order to use the nickname, you then have to use NickServ's "release" command to remove the restriction (assuming the nickname is yours) or wait until the restriction expires.

@ShadowNinja
Copy link
Collaborator

I triggered this on a different network using Charydbis and Atheme:

$ netcat <SERVER> 6667
[...]
nick x
[...]
:NickServ NOTICE x :You have 30 seconds to identify to your nickname before it is changed.
:NickServ NOTICE x :You failed to identify in time for the nickname x
^C
$ netcat <SERVER> 6667
nick x
:<SERVER> 437 * x :Nick/channel is temporarily unavailable

I've added this to my fork as ShadowNinja/LuaIRC@b4da482

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.

3 participants