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

Re: [reSIProcate] help my sip log


We could add some checks to possiblyDie needs to check if the DialogSet is UAC (mCreator == 0) and if the original request is still active even though a Dialog may not exist for it (mState == Initial || mState == ReceivedProvisional).

 

Scott

 

From: resiprocate-devel-bounces@xxxxxxxxxxxxxxx [mailto:resiprocate-devel-bounces@xxxxxxxxxxxxxxx] On Behalf Of Byron Campen
Sent: Friday, January 25, 2008 9:22 AM
To: maodong hu
Cc: resiprocate-devel
Subject: Re: [reSIProcate] help my sip log

 

          This is very interesting. What is happening here is the sent INVITE establishes a DialogSet (but no Dialogs; no response yet), then the OPTIONS comes in, causing it to be added to the DialogSet. When the OPTIONS transaction is done, ServerOutOfDialogReq calls possiblyDie() on the DialogSet, and because there has not been a response to the INVITE yet (meaning there is no proper Dialog yet), the DialogSet goes away! The DialogSet needs to stick around at least until the INVITE transaction is over.

 

          Anyone have any opinion on how to fix this? It seems like there are other short-term Usages that will have the same effect if they manage to complete before a response comes back. (MESSAGE, unsolicited NOTIFY, etc)

 

Best regards,

Byron Campen