IRC tries to join a identified-required room before identification succeeds

RESOLVED WORKSFORME

Status

defect
RESOLVED WORKSFORME
3 years ago
3 years ago

People

(Reporter: brgabriel, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

3 years ago
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
Build ID: 20151216175450

Steps to reproduce:

Set the autojoin field to use a channel that requires a password and has +pskr set.
I set my autojoin box to this:

#channel1,#channel2,##channel3 password3

I've also tried rearranging the sequence, but to no avail.



Actual results:

The tab opens for the channel but never joins.  A spinner icon appears on the tab and continues to spin forever without ever resolving.

Mr. Cloke says the channel tries to join before the account is identified.

However, I can always manually join the channel without issue.  Mr. Cloke says that by the time you type commands as a human you are identified so it works.


Expected results:

If successful, the tab should have opened and the channel would have been joined.  If unsuccessful (bad channel keyword) then the response should come back in the tab and the spinner should stop.

Resolution notes (taken from instantbird chat):
"Authentication with SASL failed."

What I'm seeing in that log is, you try to login as MyName, it's in use, so you switch to MyOtherName, it tries to authenticate you with the server using that and a password.
That fails.
You're now connected as MyOtherName.
We then send the JOIN command.
One of those fails because you're not identified.
We then successfully identify you using NICKSERV.

So either figure out why the identification is failing during SASL (it could be a bug in IB, but I kind of doubt that...) Or we need to figure out how to not join rooms until people are identified.

Facts:
The password and alias are correct.
In other channels the account is shown as registered.
For ##channel3, IF I type out the join command then I am able to join the channel with the password without any issue, even with the +r mode set on the channel.  
Freenode uses ## for private channels.

I also tried changing the Alias to the one that is registered, so instead of using MyOtherName, I use MyName.  There is no difference in the outcome.
(Reporter)

Updated

3 years ago
OS: Unspecified → Windows 7
Hardware: Unspecified → x86_64

Comment 1

3 years ago
(In reply to brgabriel from comment #0)
> Resolution notes (taken from instantbird chat):
> "Authentication with SASL failed."
> 
> What I'm seeing in that log is, you try to login as MyName, it's in use, so
> you switch to MyOtherName, it tries to authenticate you with the server
> using that and a password.

What happens when you connect when MyName is *not* in use?
The full list of what happens is:
1. During the registration period, NICK fails (nick is already in use) so we try a second nick
2. During CAP negotiation, SASL is enabled; start SASL authentication
3. SASL authentication fails (could be wrong password or wrong nick, not sure why)
4. Registration completes
5. Instantbird sends JOIN command
6. JOIN fails because user is not yet identified (NOT because of the password)
7. Instantbird calls IDENTIFY with password, this fails
8. Instantbird calls NICKSERV IDENTIFY with password, this succeeds
9. User can now manually join the channel

Also part of this is bug 741561 (not showing error messages when we fail to join), specifically bug 955144.

This is LIKELY bug 955220, however. Can you confirm that?
Component: Account manager → IRC
OS: Windows 7 → All
Product: Instantbird → Chat Core
Hardware: x86_64 → All
Summary: Password fails in Autojoin list → IRC tries to join a identified-required room before identification succeeds
Version: 1.6 → trunk
(Reporter)

Comment 3

3 years ago
If I go into Account Manager and push the disconnect button for the irc account, it disconnects me.  So if I push connect, it reconnects me and then it fails to join the password-protect channel.

So I suppose that when I disconnect that MyName is no longer in use.  I'm only connecting from a single device, and just with IB.  

Autojoin only runs when you connect to the server.  If I'm already connected to the server, I can't push the connect button again.

Comment 4

3 years ago
(In reply to brgabriel from comment #3)
> So I suppose that when I disconnect that MyName is no longer in use.  I'm
> only connecting from a single device, and just with IB.  

Your log says that the server says the nick is in use. 

Where does MyOtherName come from?

What's the nick displayed after connection if you remove the alias from the account properties?
(Reporter)

Comment 5

3 years ago
MyName is the name that is registered.
MyOtherName is a nick that is grouped.

I also have MyOtherName set as the "Alternate nicks" in the Advanced options tab of the Account panel.

If I remove the "Alias" it still shows MyOtherName in the channels.
If I do /msg chanserv info MyOtherName, I get this:

11:41:59 AM - MyOtherName: info MyOtherName
11:41:59 AM - NickServ: Information on MyOtherName (account MyName):
11:41:59 AM - NickServ: Registered : Mar 19 15:27:56 2013 (3y 2w 0d ago)
11:41:59 AM - NickServ: User reg.  : Mar 19 15:25:08 2013 (3y 2w 0d ago)
11:41:59 AM - NickServ: Last addr  : ~Instantbi@11.11.111.11
11:41:59 AM - NickServ: Last seen  : now
11:41:59 AM - NickServ: Logins from: bgmCoder
11:41:59 AM - NickServ: Nicks      : MyName MyOtherName
11:41:59 AM - NickServ: Email      : myemail@address.com (hidden)
11:41:59 AM - NickServ: Flags      : HideMail
11:41:59 AM - NickServ: *** End of Info ***


Another thing: If I disconnect from the irc server but leave the channel tabs open, IB will attempt to reuse those tabs.  I can see in the channel tab for ##channel3 - it says "Your account has been reconnected" in gray, even though my nick never shows up in the participants list.
I'm 99% sure this is bug 955220. SASL auth doesn't work when you're using a grouped nick instead of the nick you registered to NickServ with.
(Reporter)

Comment 7

3 years ago
I tried it with the registered nick, too (albeit without ungrouping nicks first) and had the same problem.
(Reporter)

Comment 8

3 years ago
Uh - no - sorry, I didn't.  I just changed the alias; sorry, that's before I understood what alias was.
(Reporter)

Comment 9

3 years ago
For the record - if I remove the +r from the channel flags, everything works perfectly.
This is now working for the reporter.
Status: UNCONFIRMED → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.