irc
irc copied to clipboard
Add support for SASL
Many popular IRC networks now require SASL auth in order to accept connections. This library should implement that.
This library hints at how it may be done.
Or maybe this.
the process goes as follows (>
is client-to-server, <
is server-to-client)
< :server NOTICE * :*** Checking Ident
< :server NOTICE * :*** Looking up your hostname...
< :server NOTICE * :*** Found your hostname: localhost
< :server NOTICE * :*** No Ident response
> CAP LS
> USER u s e r
> NICK jess
< :server CAP * LS :account-notify extended-join sasl invite-notify
> CAP REQ sasl
< :server CAP * ACK :sasl
> AUTHENTICATE PLAIN
< AUTHENTICATE +
> AUTHENTICATE AGplc3MAaHVudGVyMg==
< :server 900 * jess!u@localhost jess :You are now logged in as jess
< :server 903 * :SASL authentication successful
> CAP END
< :server 001 jess :Welcome to the localhost Internet Relay Chat Network jess
AGplc3MAaHVudGVyMg==
is a base64 of \x00jess\x00hunter2
which is \x00<account>\x00<password>
This can be helpful too, as it's a SASL implementation with this library.