[jdev] Error in draft-ietf-xmpp-im-22.txt Section 7.4

Tijl Houtbeckers thoutbeckers at splendo.com
Thu Jun 3 17:01:27 CDT 2004


On Thu, 3 Jun 2004 23:25:03 +0200, Geir Ove Skjærvik <geiroves at online.no>  
wrote:

> Hello,
>
> Below is an excerpt from draft-ietf-xmpp-im-22.txt Section 7.4.
>
> (Seen from the Client Side:)
> It states the following described in a scenario:
>
> a) User Adds Item to Roster
> b) Server Sends Roster via IQ-Set (and provides an id="someid")
> c) Server send IQ-Result
>
> NOW to the problem: IT states:
>
> d) All receicing Users should send IQ-Result with the ID from the IQ-Set
>
> Problem is: Neither Jabber 1.4.2 NOR Tipiq' Timp 1.1 sends ANY ID in the
> IQ-Set.
>
> I have tried sending an IQ-Result back, but that only results in error
> messages from the Server. Not sending ANY response back at all works fine
> for both servers, and looks like the logical thing to do.

You're absolutly right that this behaviour is incorrect. The problems goes  
even deeper though, according to the XMPP spec you're not even allowed to  
send an <IQ> stanza without an ID (see XMPP-Core). So in your  
implementation you could assume for backwards compatibility reasons,  
whenever you get an <IQ> stanza with no id you do not have to reply to it  
(since it's really malformed), but it's best to still parse it.

Note however that the XMPP spec states that changes to roster are already  
made final, before receiving the IQ result stanzas from the clients or  
even sending out the IQ set stanzas. Wether or not the server receives the  
IQ results is only important for knowing what the roster looks like on the  
client side (or what it theoretically should look like anyway), I don't  
know of any server that maintains or uses this information for anything  
yet.



More information about the JDev mailing list