Subscribe with Response Unsubscribed Causes Roster Push to Responding Client
Description
If user a sends user b a subscribe and user b responds with an unsubscribed, effectively denying the request, the server does a roster push to the responding client when user a was never in user b's roster to begin with. The correct behavior is not to do the roster push.
Steps to reproduce: 1. User A subscribes to User B 2. User B denies Subscription Request 3. User B receives a roster item for User A after sending Unsubscribed presence, and user A is henceforth in user B's roster until User B explicitly removes them.
I do not think that the issue described here is a bug. It seems acceptable to have an item in each roster, after a rejected subscription attempt. The item in both rosters should have the subscription state ‘None’ with no pending in’s or out’s.
If user a sends user b a subscribe and user b responds with an unsubscribed, effectively denying the request, the server does a roster push to the responding client when user a was never in user b's roster to begin with. The correct behavior is not to do the roster push.
Steps to reproduce:
1. User A subscribes to User B
2. User B denies Subscription Request
3. User B receives a roster item for User A after sending Unsubscribed presence, and user A is henceforth in user B's roster until User B explicitly removes them.