2011/5/11 Bob Penfield <[email protected]>:
> You have it correct. The proxy's job is to pass the CANCEL on each branch of 
> the matching transaction. The basic rule of SIP is that all transactions 
> complete independently. The state of the transactions is dependant only on 
> the response(s) for the request and the timers on the transactions. The 
> CANCEL does not affect that state at the proxy. It is up to the UAS to 
> actually do something with the CANCEL and even then, the UAS must generate a 
> 487 response to the original request so that its transaction completes 
> independently.

Hi, let me re-open this topic for a specific case:


RFC 3261 - 16.10 CANCEL Processing

   A stateful proxy MAY generate a CANCEL to any other request it has
   generated at any time (subject to receiving a provisional response to
   that request as described in section 9.1).


RFC 3261 - 9.1 Client Behavior (CANCEL)

   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.


My question is: must a proxy also behave as section 9.1 describes? This is:

- Alice calls Bob.
- Proxy sends the INVITE to Bob.
- Proxy gets no provisional response.
- Alice sends CANCEL after a while.
- Proxy replies 200 for CANCEL.
- Proxy doesn't send CANCEL to Bob as there is not 1xx response.
- Later Bob replies 1xx.
- Should then the proxy send a CANCEL to Bob?

I think section 9.1 is just for UA's rather than proxies, but since
section 16.10 references section 9.1....

Thanks a lot.


-- 
Iñaki Baz Castillo
<[email protected]>

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

Reply via email to