Opened at 2011-12-20T19:08:48Z
Closed at 2014-02-07T16:13:36Z
#875 closed defect (duplicate)
Disconnected when trying to initialize a conversation (OTR)
Reported by: | Owned by: | pesco | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | OTR | Version: | devel |
Keywords: | openfire otr | Cc: | |
IRC client+version: | Client-independent | Operating System: | Linux |
OS version/distro: | Ubuntu, not sure of version |
Description
OpenFire: 3.7.1
BitlBee: 3.0.4+devel+852-1
Whenever I try to start a new conversation with someone on my contact list I get disconnected. The OpenFire server gets a "Disallowed character" exception. If they instead initialize the conversation with me, we can chat without problem.
[15:32] <joe> ping? [15:32] jane is away, reason: Away (I'm not here right now) [15:32] *** jane quit (openfire.server.se openfire.server.se)
As soon as I send the "ping?" I get disconnected.
[15:32] <@root> jabber - Error: Error while reading from server [15:32] <@root> jabber - Signing off.. [15:32] *** jane quit (openfire.server.se openfire.server.se) [15:32] <@root> jabber - Reconnecting in 5 seconds.. [15:32] <@root> otr keygen for joe@openfire/jabber complete [15:33] <@root> jabber - Logging in: Connecting [15:33] <@root> jabber - Logging in: Connected to server, logging in [15:33] <@root> jabber - Logging in: Authentication finished [15:33] <@root> jabber - Logging in: Authenticated, requesting buddy list [15:33] <@root> jabber - Logging in: Logged in [15:33] *** jane (jane@openfire) joined
Turning off OTR (set otr_policy never) solves the problem.
Attachments (0)
Change History (4)
comment:1 Changed at 2011-12-20T19:13:19Z by
Component: | Jabber → OTR |
---|---|
Owner: | changed from wilmer to pesco |
comment:2 Changed at 2012-05-02T22:57:09Z by
I can reproduce the same bug (probably) but with different conditions.
I'm connecting to jabberd2 2.2.14 server. I have two bitlbee 3.0.5 clients. In OTR opportunistic mode with xmlconsole enabled I get disconnected with a similar error:
[testing] hello <xmlconsole> TX: <message type="chat" to="testing@jabber.server/BitlBee"><body>hello</body></message> <xmlconsole> RX: <stream:error xmlns:stream="http://etherx.jabber.org/streams"><xml-not-well-formed xmlns="urn:ietf:params:xml:ns:xmpp-streams"/><text xmlns="urn:ietf:params:xml:ns:xmpp-streams">not well-formed (invalid token)</text></stream:error> <root> jabber - Error: Stream error: xml-not-well-formed: not well-formed (invalid token) <root> jabber - Signing off.. -:- SignOff testing [testing@jabber.server]: &bitlbee (bitlbee.localhost jabber.server) <root> jabber - Reconnecting in 5 seconds..
If I turn off opportunistic mode, all works as expected:
<presi> set otr_policy manual <root> otr_policy = `manual' [testing] hellooo <xmlconsole> TX: <message type="chat" to="testing@jabber.server/BitlBee"><body>hellooo</body></message>
Without xmlconsole all works fine. So I think there is a strange interaction with magic characters of oportunistic mode with some servers and with jabber module too as xmlconsole triggers it.
comment:3 Changed at 2012-12-15T16:31:43Z by
I am hitting this too with current BitlBee dev on ejabberd 2.1.11. Only with xmlconsole true and otr_policy opportunistic.
comment:4 Changed at 2014-02-07T16:13:36Z by
Resolution: | → duplicate |
---|---|
Status: | new → closed |
goto #1111
pesco, I'm pretty sure something funky is going on in the OTR module.
We managed to get a log fragment from the Jabber server eventually, showing what data it received from BitlBee:
Some weird corruption going on there. Some poking with gdb showed more:
Of course it could be anything at this point, but the problem definitely did go away after disabling OTR. Also, I've never before seen this problem anywhere and this Jabber I/O code is five years old..