powered by Jive Software

Deadlock while connecting with TLS


I have a problem with Openfire: The connection takes incredibly long to establish (around 20 sec).

After debugging I found out, that the following line of code is responsible for it:

(in org.jivesoftware.openfire.nio.NIOConnection#startTLS)


// TODO Temporary workaround (placing SSLFilter before ExecutorFilter) to avoid deadlock. Waiting for

// MINA devs feedback

ioSession.getFilterChain().addBefore(“org.apache.mina.common.ExecutorThreadMode l”, “tls”, filter);


The line after it is never executed and eventually (after ~20 seconds) the connection/login proceeds (and also seems to work then).

Can anybody clarify or help here? Seems like the documented deadlock is not solved.

The curious thing is, we set up another server, which I debugged, too, until this line, and it immediately jumps to the next line.

I use Openfire 3.8.2 (jre embedded).

I also tried to set the property xmpp.server.tls.enabled=false, but Openfire still sends the TLS feature to the client.

Thanks for any help!