Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
0.8
-
None
Description
When recieving messages from external servers, if the message is in the jabber:server namespace the message is not recognized and is sent to the ServiceUnavailableHandler. This includes all IQ/Presence/... messages. This was discovered testing against Openfire 3.2. According to a quick look of the rfc these should be accepted.
Easy fix it is to change XMPPCoreStanzaHandler to check for either namespace
protected boolean verifyNamespace(Stanza stanza)
{ String namespaceUri = stanza.getNamespaceURI(); return NamespaceURIs.JABBER_SERVER.equals(namespaceUri) || NamespaceURIs.JABBER_CLIENT.equals(namespaceUri); }I am not entirely sure this the correct way to handle it... but it works.
It should also log at least debug level when StanzaHandlerLookup returns SERVICE_UNAVAILABLE_STANZA_ERROR_HANDLER it would have saved days of debugging.