Hi,
I have an issue with a far end sending out of sequence SIP messages to Sofia
SIP.
Sofia SIP sends INVITE
Far end sends 200 OK
Far end sends 180 Ringing (within a few microseconds after 200 OK so they're
back-to-back).
In our use of Sofia SIP we have the auto ACK disabled so Sofia informs us of
the 200 OK, and our code does a few milliseconds of processing before calling
nua_ack(). In those few milliseconds, Sofia seems to get the out of sequence
180 Ringing because when we call nua_ack(), the Sofia log has an error message
of "event i_error 900 No response to ACK" and Wireshark shows we dont send out
the ACK.
Looking at the code for nua_stack_ack() I see:
if (!cr || cr->cr_orq == NULL || cr->cr_status < 200) {
UA_EVENT2(nua_i_error, 900, "No response to ACK");
return 1;
}
I havent set up the debugger, but my guess is that cr->cr_status = 180 from the
out of sequence 180 message.
It seems to me that Sofia could handle this a little smoother in that it should
know its still dealing with the 200 OK and queue up the 180 Ringing somehow
until our application actually calls nua_ack(). Our expectation is that
incoming SIP messages are handled sequentially such that the ACK is finished to
completion before we start dealing with the out of sequence180 Ringing.
Opinions? Comments? Help?
Thx in advance!
-Dave
PS: Yes, I'm working on making the far end send things in order to avoid this
scenario. :)
The information contained in this message, including attachments, may contain
privileged and/or confidential information that is intended to be delivered
only to the person(s) identified above. If you are not the intended
recipient(s), or the person responsible for delivering this message to the
intended recipient(s), Airbiquity Inc. requests that you immediately notify the
sender and asks that you do not read the message or its attachments and that
you delete them without copying or sending them to anyone else. Any review,
reliance or distribution by others not intended as recipients or forwarding
without express permission is strictly prohibited. Replies to this message may
be received by other Airbiquity personnel in addition to the intended
recipient(s).
------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Sofia-sip-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel