Matrix-appservice-irc: Can't store username that contains underscore

Created on 30 May 2021  路  9Comments  路  Source: matrix-org/matrix-appservice-irc

Describe the bug
I tried to store my username on Libera Chat (Logan_) for SASL authentication using !username Logan_, but I got the message that it contains invalid characters not supported by IRC:

!username Logan_

Username contained invalid characters not supported by IRC.

This message is definitely incorrect because my username is registered with Libera Chat with an underscore. It looks like this is because _ is used as a delimiter by the bridge. Does this mean I can't authenticate my Libera username using Matrix?

To Reproduce
Steps to reproduce the behavior:

  1. Open a DM with the bridge user
  2. Say !username and then a username containing an underscore
  3. See error

Expected behavior
I expected to be able to store my IRC username with Matrix and automatically authenticate using SASL.

Desktop (please complete the following information):

  • OS: Ubuntu
  • Browser Firefox
  • Version 90.0a1
bug

Most helpful comment

Upper case characters are (presumably incorrectly) rejected at the moment.

All 9 comments

It's maybe not related with the underscore, because I get the same error message with !username Levans (which is registered by me).

Upper case characters are (presumably incorrectly) rejected at the moment.

I have the same issue with "Nico[m]", presumably also because of the upper case character.

I hit both of these cases with Peter_R :laughing:

I have the same problem with |. I have no problem setting my nick to saarsec|jbushart using !nick, but !username fails with "Username contained invalid characters not supported by IRC.".

not all characters are equal. another example: #498

Another incorrectly invalid character seems to be @. It's needed for specifying device ID for Ergo IRCd and possibly also ZNC.

If you're trying to use !username for SASL, a workaround for Libera (and other networks with a standard services setup) is you can group a nick that satisfies the requirements of the bridge (so basically all lowercase letters) and use that as !username, then use !nick to change your nick back to the one you want

That seems to work for me, not ideal but at least is a workaround. Thanks!

Was this page helpful?
0 / 5 - 0 ratings