Skip to content

Commit 3d11793

Browse files
authored
Fix order of connection registration numerics (#221)
In practice, the only extra numerics seem to be RPL_YOURID (irc2) and RPL_VISIBLEHOST (UnrealIRCd).
1 parent 44b49ba commit 3d11793

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

index.md

+11-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,17 @@ If the server is waiting to complete a lookup of client information (such as hos
119119

120120
Additionally, some servers also send a {% message PING %} and require a matching {% command PONG %} from the client before continuing. This exchange may happen immediately on connection and at any time during connection registration, so clients MUST respond correctly to it.
121121

122-
Upon successful completion of the registration process, the server MUST send, in this order, the {% numeric RPL_WELCOME %}, {% numeric RPL_YOURHOST %}, {% numeric RPL_CREATED %}, {% numeric RPL_MYINFO %}, and at least one {% numeric RPL_ISUPPORT %} numeric to the client. The server SHOULD then respond as though the client sent the {% command LUSERS %} command and return the appropriate numerics. If the user has client modes set on them automatically upon joining the network, the server SHOULD send the client the {% numeric RPL_UMODEIS %} reply or a {% message MODE %} message with the client as target, preferably the former. The server MAY send other numerics and messages. The server MUST then respond as though the client sent it the {% message MOTD %} command, i.e. it must send either the successful [Message of the Day](#motd-message) numerics or the {% numeric ERR_NOMOTD %} numeric.
122+
Upon successful completion of the registration process, the server MUST send, in this order:
123+
124+
1. {% numeric RPL_WELCOME %},
125+
2. {% numeric RPL_YOURHOST %},
126+
3. {% numeric RPL_CREATED %},
127+
4. {% numeric RPL_MYINFO %},
128+
5. at least one {% numeric RPL_ISUPPORT %} numeric to the client.
129+
6. The server MAY then send other numerics and messages.
130+
7. The server SHOULD then respond as though the client sent the {% command LUSERS %} command and return the appropriate numerics.
131+
8. The server MUST then respond as though the client sent it the {% message MOTD %} command, i.e. it must send either the successful [Message of the Day](#motd-message) numerics or the {% numeric ERR_NOMOTD %} numeric.
132+
9. If the user has client modes set on them automatically upon joining the network, the server SHOULD send the client the {% numeric RPL_UMODEIS %} reply or a {% message MODE %} message with the client as target, preferably the former.
123133

124134
The first parameter of the {% numeric RPL_WELCOME %} message is the nickname assigned by the network to the client. Since it may differ from the nickname the client requested with the `NICK` command (due to, e.g. length limits or policy restrictions on nicknames), the client SHOULD use this parameter to determine its actual nickname at the time of connection. Subsequent nickname changes, client-initiated or not, will be communicated by the server sending a {% message NICK %} message.
125135

0 commit comments

Comments
 (0)