< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

Re: [reSIProcate] Question about ClientSubscription and onRequestRetry


We're in the middle of re-basing from the latest release, and found that this change by Francis prevents onNewSubscription from getting called at all in the normal case (UAC sends the SUBSCRIBE, UAS responds as normal).

 

Are we missing something?

 

Thanks,

Jeremy


From: resiprocate-devel-bounces@xxxxxxxxxxxxxxx [resiprocate-devel-bounces@xxxxxxxxxxxxxxx] on behalf of Scott Godin [sgodin@xxxxxxxxxxxxxxx]
Sent: Wednesday, April 17, 2013 2:19 PM
To: Francis Joanis
Cc: resiprocate-devel
Subject: Re: [reSIProcate] Question about ClientSubscription and onRequestRetry

Sounds right to me - the mOnNewSubscriptionCalled check will ensure we don't call onNewSubscription twice.

Scott

On Wed, Apr 17, 2013 at 4:03 PM, Francis Joanis <francis.joanis@xxxxxxxxx> wrote:
Hi guys,

For the following scenario:

- DUM UAC sends SUBSCRIBE to UAS
- UAS isn't responding and UAC times out
- On the UAC, onRequestRetry gets called and returns 0 (to retry ASAP)
- DUM retries
- UAS replies as usual (normal SIP flow)

In that case, we would expect onNewSubscription(client) to be called when the NOTIFY comes in once the 2nd SUBSCRIBE works but it doesn't...

It looks like the following line (91) in ClientSubscription.cxx:

if(!mOnNewSubscriptionCalled && !getAppDialogSet()->isReUsed())

should actually read

if(!mOnNewSubscriptionCalled && getAppDialogSet()->isReUsed())

without the ! in front of the second check.

I made a quick test and it looks like it resolves the issue, but I wanted to run it by you guys before submitting a fix. What do you think?

Thanks,
Francis

_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxx
https://list.resiprocate.org/mailman/listinfo/resiprocate-devel