Looks like it is defined clearly and openser is not 100% standard conform.
regards klaus
fancy wrote:
Hi Klaus: RFC 3665 page 54 line 4: A CANCEL constructed by a client MUST have only a single Via header field value matching the top Via value in the request being cancelled.
and RFC 3665 at page 53: CANCEL is referred to as a "hop-by-hop" request, since it is responded to at each stateful proxy hop.
and RFC 3665 at page 21: Client: A client is any network element that sends SIP requests and receives SIP responses. Clients may or may not interact directly with a human user. User agent clients and proxies are clients.
So, for my opinion, the role of proxy in this case of RFC 3665 section 3.8 is a client when it sends CANCEL message to Bob.
If I misunderstand any RFC meanings, please correct me. Thank you very much.
Best Regards, Fangyu Ling
fancy wrote:
According to RFC 3665 section 3.8 and RFC 3261 section 9, there is only one via header in CANCEL message (message F11, F13 at page 72 of RFC 3665).
Hi!
I could find it in RFC 3665, but not in 3261. Where exactly in RFC 3261 is mentioned that the CANCEL has only 1 Via header?
Further, the example has only one Via header - but I could not find any definition if this is a MUST or not.
How can I remove the 2nd via header?
You would have to modify tm module and change the code which generates the CANCEL message.
regards klaus