AUTH Command (new IRCX command)

Authenticate the client using an SASL[4] authentication mechanism.

Syntax:

AUTH <name> <seq> [:<parameter>]

Parameters

<name> The name of the SASL mechanism to use for authentication.

<seq> The sequence is a value of 'I' or 'S'. The 'I' value is specified for the initial AUTH message and the 'S' value is specified for all subsequent AUTH messages. If the client specifies '*' for the sequence, the server will abort the authentication sequence and return IRCERR_AUTHENTICATIONFAILED.

<parameter> This is optional data sent as an argument with the AUTH messages. The content depends on the authentication mechanism being used. All content must use standard escaping formats (e.g. \r for carriage return) to comply with IRC message format restrictions.

Results

AUTH message

Possible Errors

ERR_NEEDMOREPARAMS
IRCERR_ALREADYAUTHENTICATED
IRCERR_ALREADYREGISTERED
IRCERR_AUTHENTICATIONFAILED
IRCERR_AUTHENTICATIONSUSPENDED
IRCERR_BADCOMMAND
IRCERR_UNKNOWNPACKAGE

Remarks

If the server is known to support IRCX with specific SASL mechanism(s), then the first message from an IRCX-compliant client must be the AUTH command (if authentication is to be used), before the USER and NICK commands. Use MODE ISIRCX to determine if the server supports IRCX.

Example

Example 3.6. Authentication Example

Client: AUTH NTLM I :<data>
Server: AUTH NTLM S :<data>
Client: AUTH NTLM S :<data>
Server: AUTH NTLM * userid@domain 03FA4534C

[Note]Editor's Note

The IRCX draft does not make this clear, however, the server's AUTH response must not contain the server's prefix.