Smack should not reply with multiple stream types after stream initiation is offered

Description

Instead of replying as described in Example 4 of XEP-95, Smack replies with multiple stream types

<iq id="7dnrX-23" to="lolo@foo.bar/Smack" from="lala@foo.bar/Smack" type="result"> <si xmlns="http://jabber.org/protocol/si"> <feature xmlns="http://jabber.org/protocol/feature-neg"> <x xmlns="jabber:x:data" type="submit"> <field var="stream-method"> <value>http://jabber.org/protocol/bytestreams</value> <value>http://jabber.org/protocol/ibb</value> </field> </x> </feature> </si> </iq>

This is caused by StreamNegotiator, but the real problem is that Smack treats the data form like list-multi, when it is specified a list-single. I can only guess why this is the cause, but it may be related to FaultTolerantNegoiator, which seams like a non-standard way to implement fallback from S5B to IBB.

Reported at http://stackoverflow.com/a/23519620/194894

Environment

None

Activity

Show:
Fixed

Details

Assignee

Reporter

Expected Effort

Components

Fix versions

Affects versions

Priority

Created May 7, 2014 at 5:51 PM
Updated September 20, 2020 at 1:31 PM
Resolved September 20, 2020 at 1:31 PM

Flag notifications