Closed GoogleCodeExporter closed 9 years ago
Thanks for the patch.
Is it possible to have wireshark trace reproducing the issue or tell us the sip
server you're using?
Original comment by boss...@yahoo.fr
on 4 Sep 2012 at 12:43
Attached is wireshark of two unpatched sipml clients. One is UAC role the other
is UAS. The problem is in the UAS, you can see that it just keeps
retransmitting the OK. I hope you have a nice websocket packet dissector to see
it clearly though.
But may be it will be easier to focus on the code in this case. I just can't
see even theoretical way of server transaction to transition from Accepted
state to Completed or Terminated without error. Why does it make sense to stay
in Accepted state after we receive ACK?
tsk_fsm_entry.prototype.CreateAlways(tsip_transac_ist_states_e.ACCEPTED, tsip_transac_ist_actions_e.RECV_ACK, tsip_transac_ist_states_e.ACCEPTED, __tsip_transac_ist_Accepted_2_Accepted_iACK, "tsip_transac_ist_Accepted_2_Accepted_iACK"),
In most other stx FSMs I've seen the states moves onto COMPLETED or some linger
state.
I am using a simple server based on the NIST JAIN SIP library.
Original comment by vladimir...@gmail.com
on 4 Sep 2012 at 1:21
Attachments:
Fixed in r90
The issue was that the timerX is not canceled.
The transaction MUST NOT transit from Accepted to Completed.
Two paths:
- Proceeding -> 300-699 -> Completed -> TimerH -> Terminated
or
- Proceeding -> 2xx -> Accepted -> TimerL -> Terminated
Original comment by boss...@yahoo.fr
on 12 Sep 2012 at 2:45
Original issue reported on code.google.com by
vladimir...@gmail.com
on 1 Sep 2012 at 9:56Attachments: