Increase client compatibility - let Quassel IRC users join

Quassel prefixes the nickname in the NICK command with a colon.
This seems to be in accordance with rfc2812. Therefor check
if the first character of a nickname is a colon and remove it.
This commit is contained in:
Björn Busse 2015-09-28 06:22:17 +02:00
parent b678682010
commit 5a17f44b24

View File

@ -180,6 +180,9 @@ func (daemon *Daemon) ClientRegister(client *Client, command string, cols []stri
return return
} }
nickname := cols[1] nickname := cols[1]
if (strings.HasPrefix(nickname, ":")) {
nickname = strings.TrimPrefix(nickname, ":")
}
for existingClient := range daemon.clients { for existingClient := range daemon.clients {
if existingClient.nickname == nickname { if existingClient.nickname == nickname {
client.ReplyParts("433", "*", nickname, "Nickname is already in use") client.ReplyParts("433", "*", nickname, "Nickname is already in use")