Hi,
to recap, what was the fix for 1.3/current master (without
rco/offer_answer) for the issue with pending calls that never get a
reply? remove_trans() and return -1 in TS_CALLING, and then go from
pending to disconnected directly?
Thanks!
Stefan
Raphael Coeffic wrote:
Module: sems
Branch: rco/offer_answer
Commit: a91ec9bacd43b79d98f508d5bb9aa22bc65389ad
URL:
http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=a91ec9bacd43b79d98f508d5bb9aa22bc65389ad
Author: Raphael Coeffic <[email protected]>
Committer: Raphael Coeffic <[email protected]>
Date: Thu Jul 8 16:01:03 2010 +0200
do not remove the transaction while cancelling in TS_CALLING state
---
core/sip/trans_layer.cpp | 19 ++++++++-----------
1 files changed, 8 insertions(+), 11 deletions(-)
diff --git a/core/sip/trans_layer.cpp b/core/sip/trans_layer.cpp
index ba0550e..0296a05 100644
--- a/core/sip/trans_layer.cpp
+++ b/core/sip/trans_layer.cpp
@@ -871,25 +871,22 @@ int trans_layer::cancel(trans_ticket* tt)
switch(t->state){
case TS_CALLING:
- // do not send a request:
- // just remove the transaction
- bucket->remove_trans(t);
bucket->unlock();
- return 0;
+ ERROR("Trying to cancel a request while in TS_CALLING state.\n");
+ return -1;
case TS_COMPLETED:
- // final reply has been sent, but still no ACK:
- // do nothing!!!
-
- // TODO: switch to TS_CANCELLING??
- // this would allow for sending the BYE as soon
- // we get an ACK or a timeout (STIMER_H)...
bucket->unlock();
- return 0;
+ ERROR("Trying to cancel a request while in TS_COMPLETED state\n");
+ return -1;
case TS_PROCEEDING:
// continue with CANCEL request
break;
+
+ default:
+ assert(0);
+ break;
}
cstring cancel_str("CANCEL");
_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev
--
Stefan Sayer
VoIP Services Consulting and Development
Warschauer Str. 24
10243 Berlin
tel:+491621366449
sip:[email protected]
email/xmpp:[email protected]
_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev