[reSIProcate] Missed handling when caller hangup before recei ving ANY response
Scott Godin
slgodin at icescape.com
Thu Sep 16 07:22:29 CDT 2004
In the scenario you described the AppDialogSet should get destroyed by DUM
after 64T1 expires (~32 seconds after the Invite). So I don't think your
change is needed.
Check out:
http://list.sipfoundry.org/archive/resiprocate-devel/msg01297.html
-----Original Message-----
From: kaiduan xie [mailto:kaiduanx at yahoo.ca]
Sent: Thursday, September 16, 2004 12:55 AM
To: resiprocate-devel at list.sipfoundry.org
Subject: [reSIProcate] Missed handling when caller hangup before receiving
ANY response
Hi, all,
In the DialogSet::cancel(), the handling when caller
hangup before receiving ANY response, including 100 is
missed. Applicaiton call AppDialogSet::cancel() to
hangup.
void
DialogSet::cancel()
{
Destroyer::Guard guard(mDestroyer);
mCancelled = true;
if (mDialogs.empty())
{
if (mReceivedProvisional && getCreator())
{
//unify makeCancel w/ Dialog makeCancel,
verify both
//exception to cancel UAS DialogSet?
auto_ptr<SipMessage>
cancel(Helper::makeCancel(getCreator()->getLastRequest()));
mDum.send(*cancel);
guard.destroy();
return;
}
else
{
// xkd-2004-9-15 to handle the case the user
hangup before receiving ANY response, including 100.
guard.destroy();
^^^^^^^^^^^^^^^
return;
}
}
....
}
I simulated this case by commenting out
mReceivedProvisional = true;
in DialogSet::dispatch()(line 337)
and test with Free World Dialup and Jasomi's outbound
proxy.
kaiduan
______________________________________________________________________
Post your free ad now! http://personals.yahoo.ca
_______________________________________________
resiprocate-devel mailing list
resiprocate-devel at list.sipfoundry.org
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel
More information about the resiprocate-devel
mailing list