Spark 2.6.3 with ejabberd - bug?

Hi guys,

Running ejabberd but many of our users have decided to use Spark as their IM client of choice because the Admin (That is me) told them any Jabber compliant client will work (Big mistake here). Everyone who is using Spark can not Authenticate, the client do not even get to that point. Here is what the ejabberd log says when someone tries to logon:

=INFO REPORT==== 2013-06-21 10:09:56 ===

I(<0.387.0>:ejabberd_listener:281) : (#Port<0.2387>) Accepted connection {{10,5,16,182},61228} -> {{10,37,229,34},5222}

=INFO REPORT==== 2013-06-21 10:09:56 ===

D(<0.1188.0>:ejabberd_receiver:320) : Received XML on stream = “<stream:stream to=“chat.domain.de” xmlns=“jabber:client” xmlns:stream=“http://etherx.jabber.org/streams” version=“1.0”>”

=INFO REPORT==== 2013-06-21 10:09:56 ===

D(<0.1189.0>:ejabberd_c2s:1553) : Send XML on stream = [60,63,120,109,108,32,

118,101,114,115,105,

111,110,61,39,49,46,

48,39,63,62,60,115,

116,114,101,97,109,58,

115,116,114,101,97,

109,32,120,109,108,

110,115,61,39,106,97,

98,98,101,114,58,99,

108,105,101,110,116,

39,32,120,109,108,110,

115,58,115,116,114,

101,97,109,61,39,104,

116,116,112,58,47,47,

101,116,104,101,114,

120,46,106,97,98,98,

101,114,46,111,114,

103,47,115,116,114,

101,97,109,115,39,32,

105,100,61,39,

“2622405657”,39,32,

102,114,111,109,61,39,

domain.de”,39,

[],

[" xml:lang=’",“en”,

“’”],

62]

=INFO REPORT==== 2013-06-21 10:09:56 ===

D(<0.1189.0>:ejabberd_c2s:1553) : Send XML on stream = <<“stream:error</stream:error>”>>

=INFO REPORT==== 2013-06-21 10:09:56 ===

D(<0.1189.0>:ejabberd_c2s:1553) : Send XML on stream = “</stream:stream>”

=INFO REPORT==== 2013-06-21 10:09:58 ===

D(<0.1180.0>:ejabberd_receiver:320) : Received XML on stream = " "

=INFO REPORT==== 2013-06-21 10:09:58 ===

D(<0.1180.0>:shaper:61) : State: {maxrate,1000,0.033344904015026544,

1371802168344903}, Size=1

M=0.5000083363649914, I=30014.192

Basically the Spark client is inchoherent.

  1. It first says it supports XMPP version 1.0

  2. Later it sends an IQ request following XEP-0078: Non-SASL Authentication.

If 1. is true, then the client must use SASL authentication. If 1 is false, then the client shouldn’t announce version=1.0

Any ideas anyone how to go around this or will I have to have the users switch client?

Thanks
Petter

Yeah, a bold move from an admin to suggest users to use any client without testing them first Also, it could became a nightmare to support, when say 10 different clients will be in use and you will face file transfer and other incompatibility issues between different clients. We usually use one client. Now we plan to switch to Spark, but probably will let some users to use another client (Psi) until they get more powerful machines to cope with Spark.

On the topic. I don’t use ejabberd, so i can’t test. This can be not a Spark issue, but rather Smack’s (a library Spark is built upon). Wonder if this is related to SMACK-446.