[ 
https://issues.apache.org/jira/browse/VYSPER-329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13471519#comment-13471519
 ] 

Justin Spears commented on VYSPER-329:
--------------------------------------

<packet xmlns="http://www.jivesoftware.org"; 
streamID="79ae8938127c4251922e2727d631d29a" status="connected" timestamp="Oct 
08, 2012 08:27:21:945 AM"><message xmlns="" 
to="user@justins-imac/fe42afe0e3624255ae5f26cbfd0600c4" type="chat" 
id="iChat_741B9737"><body>s2c</body>
<html xmlns="http://jabber.org/protocol/xhtml-im";><body 
xmlns="http://www.w3.org/1999/xhtml"; 
style="background-color:#fee32f;color:#000000;"><span style="font-family: 
'Helvetica';font-size: 12px;">s2c</span></body></html><x 
xmlns="jabber:x:event"><composing/></x>
<active xmlns="http://jabber.org/protocol/chatstates"/></message></packet>


The interesting bit is that the message has an empty namespace.  This is from 
OpenFire 3.7.1 using iChat 6.0.2
                
> Server To Server inbound messages in jabber:server namespace, delivery fails
> ----------------------------------------------------------------------------
>
>                 Key: VYSPER-329
>                 URL: https://issues.apache.org/jira/browse/VYSPER-329
>             Project: VYSPER
>          Issue Type: Bug
>          Components: server-to-server
>    Affects Versions: 0.8
>            Reporter: Justin Spears
>            Priority: Critical
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> 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.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to