2008/12/24 Ashish Dobhal <[email protected]>: > CANCEL Flow: > > Proxy 1 ---> Proxy 2 --> Proxy 1 ---X--- UA3 > > > > Proxy 1 sends the CANCEL to Proxy 2, which respond with 200 OK to Proxy > 1. > > Proxy 2 then sends the CANCEL to Proxy 1, however Proxy 1 fails to > detect it as a Spiral Request.
Why does Proxy 1 fails there? Proxy 1 already received an INVITE with branch=1234 from Proxy 2, so when Proxy 2 sends the CANCEL to Proxy 1 this CANCEL will have the same branch value and Proxy 1 will match it against the current INVITE transaction from Proxy 2 (and will cancel it as usual). There is no need at all of detecting if a CANCEL is a spiral, when receiving a CANCEL the server/proxy just needs to match the branch parameter against its current server transactions (in case of a transaction stateful proxy). -- Iñaki Baz Castillo <[email protected]> _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
