I have Openfire 3.6.4 installed and I wanted to set up Jappix as an alterante means of use by the users.
All went well for a while. I set up Apache redirection and the BOSH server built-into Openfire (port 7070/7071) so that Jappix can communicate. All seems well, except for one tiny detail.
New users created via the “Register” option cannot log in using Jappix unless they first log in using another client (such as Pidgin). Same goes for a user created using the Openfire admin console.
In the debug log, the following error is generated by Openfire when a new user tries to log in:
========================================
2011.02.22 00:22:09 SASLAuthentication: SaslException
javax.security.sasl.SaslException: Expecting comma or linear whitespace after quoted string: "utf-8"
at com.sun.security.sasl.digest.DigestMD5Base.parseDirectives(DigestMD5Base.java:7 21)
at com.sun.security.sasl.digest.DigestMD5Server.evaluateResponse(DigestMD5Server.j ava:242)
at org.jivesoftware.openfire.net.SASLAuthentication.handle(SASLAuthentication.java :296)
at org.jivesoftware.openfire.SessionPacketRouter.route(SessionPacketRouter.java:58 )
at org.jivesoftware.openfire.http.HttpSession.sendPendingPackets(HttpSession.java: 611)
at org.jivesoftware.openfire.http.HttpSessionManager$HttpPacketSender.run(HttpSess ionManager.java:373)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
=======================================
Has anyone else experienced this issue? Can anyone provide some insight?
For example, the user “claudiu” can log in with no problems but the user “silvia” cannot, and throws the Exception shown in the above post. Despite this, there’s doesn’t seem to be anything wrong with the second response that would cause that exception.
As a temporary solution, I hacked the file src/java/org/jivesoftware/openfire/net/SASLAuthentication.java and eliminated the problem throwing the exception. It seems to be caused by an “invisible” trailing character in the response, most probably caused by Jappix.
This will eliminate all trailing characters (visible or not) after the last double quote ("). I know, it’s an ugly hack, not elegant at all, but at least now all my users can log in using Jappix.
I will post this on the Jappix boards and see why the response gets malformated, but I think some kind of sanity check should be done in Openfire itself too in the future.