I agree; the CANCEL can be sent after receiving a 100 response.

The following are some additional snippets which define "provisional response" 
and why RFC 3261 introduced delaying CANCEL until 1xx received.

Section 6:

"Provisional Response: A response used by the server to indicate
   progress, but that does not terminate a SIP transaction.  1xx
   responses are provisional, other responses are considered
   final."

Section 7.2:

"any response with a status code between 100 and 199 is
 referred to as a "1xx response""

Section 28.1:

"A UA or proxy cannot send CANCEL for a transaction until it gets a
 provisional response for the request.  This was allowed in RFC
 2543 but leads to potential race conditions."

> -----Original Message-----
> From: Tarun2 Gupta [mailto:[email protected]]
> Sent: Monday, June 10, 2013 11:11 PM
> To: Rupesh Mothe; [email protected]
> Subject: Re: [Sip-implementors] CANCEL after 100 trying
> 
> Hi Rupesh
> 
> RFC 3261 9.1 Client Behavior throws light on the expected behavior:
> 
> Excerpts:
> If no provisional response has been received, the CANCEL request MUST
> NOT be sent; rather, the client MUST wait for the arrival of a
> provisional response before sending the request.
> 
> ..
> ..
> 
> If it was allowed to send the CANCEL before receiving a response
> for the previous request, the server could receive the CANCEL
> before the original request.


_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to