Skip navigation
446 Views 0 Replies Latest reply: Mar 9, 2012 3:40 AM by CSH RSS
CSH Gold 358 posts since
Aug 18, 2011
Currently Being Moderated

Mar 9, 2012 3:40 AM

XMPP spec 2.5 Deleting a Roster Item - Wrong implementation

Hi,

 

I have the problem, that when I delete a contact in a user's roster, that the user is also deleted in the contact's roster.

 

It doesn't matter what subscription state the items have.

 

The spec doesn't mention anything about deleting the user in the contact's roster, too:

http://xmpp.org/rfcs/rfc6121.html#roster-delete-success

 

The old spec even explicitly describes the end state:

http://xmpp.org/rfcs/rfc3921.html#int-remove

 

"Note: When the user removes the contact from the user's roster, the end state of the contact's roster is that the user is still in the contact's roster with a subscription state of "none"; in order to completely remove the roster item for the user, the contact needs to also send a roster removal request."

 

 

I delete a roster item by using Smack's Roster.removeEntry, which basically only sends:

<iq from='juliet@example.com/balcony'
       id='hm4hs97y'
       type='set'>
     <query xmlns='jabber:iq:roster'>
       <item jid='nurse@example.com
             subscription='remove'/>
     </query>
   </iq>

I also don't know the difference, if I remove the item in Openfire admin UI physically via the delete button, and if I update the subscription state to "remove" in edit mode.

The spec says about deleting a roster item: "it MUST update the item in the user's roster".

Does it mean removed entries should in fact never be removed but only marked as removed?

 

In my opinion this is a bug. Or can I configure Openfire how to handle incoming "remove" stanzas?

More Like This

  • Retrieving data ...

Bookmarked By (0)

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points