[OpenSER-Users] totag in 200 cancelling reply

Klaus Darilion klaus.mailinglists at pernau.at
Tue Jun 26 16:35:26 CEST 2007



Alex Hermann wrote:
> Hello,
> 
> Situation is :
> 
> UAC -> Asterisk1 -> OpenSER -> Asterisk2
> 
> OpenSER is using tm module (t_relay and friends).
> 
> When the UAC cancels an INVITE, the CANCEL is propagated to Asterisk2 which 
> replies to the INVITE with a 487 and to the CANCEL with 200 OK. Both replies 
> have the same ToTag, as rfc3261 9.2 suggests (SHOULD). The 487 reply is 
> forwarded to Asterisk1 by OpenSER with the ToTag unaltered, but the 200 OK is 
> forwarded as "200 cancelling" with a different ToTag (created by OpenSER). 
> This messes up the transaction matching on Asterisk1 (which uses pedantic=yes 
> in the sip.conf and has to stay that way)

Asterisk's transaction matching is broken - regardless of the pedantic 
setting. With this option you can only choose between different bugs ;-)

> Is there a way to force OpenSER to use the ToTag of the incoming reply (the 
> winning branch?) instead of it creating a new one?


I do not think so, because the CANCEL is hop by hop and the 200 OK the 
the CANCEL will be produced before the 487 is relayed.

regards
klaus




More information about the Users mailing list