On Tuesday 12 February 2008 12:18:15 Taisto Qvist wrote:
t_check_trans() :
ACK request - true if the ACK is a local end-to-end ACK for an existent INVITE transaction.
To me, that sounds like a contradiction in terms, since there is (rfc-wise) no transaction left after 2xx has been proxied through
Good point. Hope there is a explanation of this behaviour. In my opinion OpenSer does a special treatment for ACK in tm mode, even if they are for failed transaction (hop-by-hop ACK's) or succesfull INVITE (end-to-end ACK's).
Then how long does the transaction live after 2xx has been forwarded? How come its implemented this way?
There is a specific timer in RFC 3261 for this purpose (if I'm not wrong). Maybe OpenSer uses that timer to keep transaction info and during that time matches the end-to-end ACK as part of the transaction (no very RFC of course, but it seems to work).
Regards.