RE: [reSIProcate] reINVITE problem
- From: "Alexander Altshuler" <alt@xxxxxxxxx>
- Date: Tue, 20 Sep 2005 10:40:22 +0400
Hi Christian
Please clarify the use case:
Is UA1 reSIProcate based?
Is UA2 reSIProcate based?
Version, platform.
Can you provide ethereal trace?
Regards,
Alex
-----Original Message-----
From: resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx
[mailto:resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of
Christian_Gavin@xxxxxxxxxxxx
Sent: Tuesday, September 20, 2005 3:13 AM
To: resiprocate-devel@xxxxxxxxxxxxxxxxxxx
Subject: [reSIProcate] reINVITE problem
Hi,
I am seeing a race condition where a user agent mistakenly receives an
OnAnswer callback for the wrong sequence (I am using 0.9)
Here is what is happening (I have skipped the 100 Trying and 180 Ringing
messages for clarity):
1) UA1 ---- INVITE ----> UA2
(Cseq: 1 INVITE)
2) UA1 <----OK with SDP ---- UA2
(CSeq: 1 INVITE)
===> fires an OnAnswer callback, this is correct
3) UA1 ------ ACK -----> UA2
(CSeq: 1 ACK)
4) UA1 ---- re INVITE ---> UA2
(CSeq:2 INVITE)
5) UA1 <----OK with SDP ---- UA2
(CSeq: 1 INVITE)
(this one is a resend of 2)
===> fires an OnAnswer callback, this is incorrect (was already fired when
message 2) was received)
6) UA1 ------ ACK -----> UA2
(CSeq: 1 ACK)
(this is an ACK to message 5)
7) UA1 <--- OK with SDP ---- UA2
(CSeq:2 INVITE)
====> this is the response to the second reinvite, doesn't fire an OnAnswer
callback
8) UA1 ------ ACK -----> UA2
(CSeq: 2 ACK)
When my user agent (UA1) receives the retransmitted message 5), it thinks
it is an answer to the reinvite (message 4). However, even if the Call ID
is identical, the call sequence is different. Nonetheless the OnAnswer
callback is fired with the SDP corresponding to the answer to the first
INVITE, not the second.
Has anyone seen this before?
Thanks,
Christian
_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxxxxxx
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel