I’m trying to use XMPP stream compression (XEP-0138) with latest Smack API. Problem is it’s not compliant with XEP-0170, that is order of stream features negotiation. XEP says:
TLS
SASL
Stream compression
Resource binding
[Session estabilishing]
While Smack does:
TLS
SASL
Resource binding
[Session estabilishing]
Stream compression
I know it might work with some XMPP servers, but I need to know if it’s 100% safe to do that.
The order specified in XEP-0170 is only a recommendation. Session establisihing is now obsolete with the newer RFCs, so the only thing that Smack does different is Stream compression.
I can’t tell you if it’s 100% compatible with ever server implementation out there. Only somebody who tried out every server could tell.
But from my experience I can say that I never encountered a bug report where this caused problems.