The default bug view has changed. See this FAQ.

Fix login to XMPP servers that implement XMPP v1.0, don't support SASL, but advertise iq-auth support (eg. fastmail)

RESOLVED FIXED in Thunderbird 19.0

Status

Thunderbird
Instant Messaging
RESOLVED FIXED
5 years ago
4 years ago

People

(Reporter: Alexei Colin, Assigned: florian)

Tracking

17 Branch
Thunderbird 19.0

Thunderbird Tracking Flags

(thunderbird17+ fixed, thunderbird18+ fixed)

Details

Attachments

(2 attachments, 2 obsolete attachments)

(Reporter)

Description

5 years ago
Created attachment 675977 [details]
thunderbird-im-xmpp-no-sasl.log

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:16.0) Gecko/20100101 Firefox/16.0
Build ID: 20121010231231

Steps to reproduce:

This is a fork of Bug 789745. The following case seems to not be covered by the detection mechanism implemented as a fix to that bug.

1. Created an XMPP account with chat.messagingengine.com:5222 (a server without SASL support).
2. Attempted to connect.

Server details:
[1] http://fastmail.wikia.com/wiki/ChatService
[2] http://blog.fastmail.fm/2012/09/26/one-step-forward-two-steps-back/



Actual results:

The connection failed with "No authentication mechanism offered by the server".
The debug log is attached.


Expected results:

Thunderbird IM should have detected that this server does not support SASL and fallen back to legacy authentication.
(Reporter)

Updated

5 years ago
Component: Untriaged → Instant Messaging
See Also: → bug 789745
(Assignee)

Comment 1

5 years ago
Created attachment 676416 [details] [diff] [review]
WIP

This should be all we need to change to fix this. I haven't tested this at all, so not requesting review yet. Feedback welcome of course :).

The relevant specs are:
http://xmpp.org/rfcs/rfc3920.html#sasl
"If the receiving entity is capable of SASL negotiation, it MUST advertise one or more authentication mechanisms within a <mechanisms/> element qualified by the 'urn:ietf:params:xml:ns:xmpp-sasl' namespace in reply to the opening stream tag received from the initiating entity (if the opening stream tag included the 'version' attribute set to a value of at least "1.0")."

and http://xmpp.org/extensions/xep-0078.html#streamfeature
"It may be desirable for a server to advertise support for non-SASL authentication as a stream feature. The namespace for reporting support within <stream:features/> is "http://jabber.org/features/iq-auth". Upon receiving a stream header qualified by the 'jabber:client' namespace, a server that returns stream features SHOULD also announce support for non-SASL authentication by including the relevant stream feature."
Assignee: nobody → florian
Status: UNCONFIRMED → NEW
Ever confirmed: true
(Assignee)

Comment 2

5 years ago
Created attachment 677591 [details] [diff] [review]
Patch v2

This was tested by aleth. And I also added a comment to clarify some code that made us frown when looking at it.
Attachment #676416 - Attachment is obsolete: true
Attachment #677591 - Flags: review?(clokep)
(Assignee)

Comment 3

5 years ago
Created attachment 677593 [details] [diff] [review]
Patch v2

Same patch, with the additional comment added for real this time.
Attachment #677591 - Attachment is obsolete: true
Attachment #677591 - Flags: review?(clokep)
Attachment #677593 - Flags: review?(clokep)
Comment on attachment 677593 [details] [diff] [review]
Patch v2

Thanks for fixing this Florian. Looks good to me!
Attachment #677593 - Flags: review?(clokep) → review+
(Assignee)

Updated

5 years ago
tracking-thunderbird17: --- → ?
tracking-thunderbird18: --- → ?
OS: Linux → All
Hardware: x86 → All
Summary: IM does not detect that XMPP server does not support SASL → Fix login to XMPP servers that implement XMPP v1.0, don't support SASL, but advertise iq-auth support (eg. fastmail)
(Assignee)

Updated

5 years ago
Blocks: 789745
(Assignee)

Comment 5

5 years ago
Comment on attachment 677593 [details] [diff] [review]
Patch v2

[Approval Request Comment]
Regression caused by (bug #): Not really a regression, but this patch fixes an edge case that wasn't handled by the patch in bug 789745 that added support of non-SASL authentication to Thunderbird 17.
User impact if declined: impossible to login to some XMPP server, for example the fastmail server.
Testing completed (on c-c, etc.): I had someone with a fastmail account test the patch locally and confirm he can login with this patch applied.
Risk to taking this patch (and alternatives if risky): low, the patch is relatively straight forward.
Attachment #677593 - Flags: approval-comm-beta?
Attachment #677593 - Flags: approval-comm-aurora?
(Assignee)

Comment 6

5 years ago
https://hg.mozilla.org/comm-central/rev/d94324488af9
http://hg.instantbird.org/instantbird/rev/a7667e752914
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 19.0
Attachment #677593 - Flags: approval-comm-beta?
Attachment #677593 - Flags: approval-comm-beta+
Attachment #677593 - Flags: approval-comm-aurora?
Attachment #677593 - Flags: approval-comm-aurora+
comm-aurora: https://hg.mozilla.org/releases/comm-aurora/rev/170701a3acc0
comm-beta: https://hg.mozilla.org/releases/comm-beta/rev/a18af72a9831
status-thunderbird17: --- → fixed
status-thunderbird18: --- → fixed
tracking-thunderbird17: ? → +
tracking-thunderbird18: ? → +
(Assignee)

Updated

4 years ago
Duplicate of this bug: 789868
You need to log in before you can comment on or make changes to this bug.