I have a bit more misunderstanding, uncertainty and doubt: See example 4:
C:<iq from='[email protected]/home' to='[email protected]' type='get'> <query xmlns='jabber:iq:roster' ver='ver14'/> </iq> ... S:<iq from='[email protected]' to='[email protected]/home' type='set'> <query xmlns='jabber:iq:roster' ver='ver42'>...</query> </iq> </stream:stream> [ reconnection ] C:<iq from='[email protected]/home' to='[email protected]' type='get'> <query xmlns='jabber:iq:roster' ver='ver34'/> </iq> <!-- ^^^^^ --> As far as I see, the client should send "ver42", not "ver34". Server replies confirm this assumption. See section 5.4 Sending Pushes: For instance, if a series of roster modifications result in a roster item that does not differ from the version cached by the client (e.g., a modification to the item's 'name' attribute and then a modification back to the original value), then a server that implements the "complete roster hashes" approach would consider the item to have __NOT__ been modified for purposes of roster versioning and therefore would __NOT__ push the item to the client in an interim roster push; however, a server that implements the "strictly increasing sequence numbers" approach would send a roster push in this situtation. Seems, the text with "__NOT__"`s makes more sense than without them. Am I completely wrong? -- WBRBW, Leonid Evdokimov
signature.asc
Description: OpenPGP digital signature
