IƱaki Baz Castillo writes:
RURI is a addr-spec, so any param in the RURI is, of course, a URI param. But in case a From/Contact/To header contains a addr-spec then a param is ALWAYS a header param.
where is that stated in rfc3261? it is not enough to me that you assure so. my counter argument could be that if there are no <>s, then every param is uri param and that viewpoint is fully supported by the syntax.
One more argument:
contact-param = (name-addr / addr-spec) *(SEMI contact-params)
Imagine you use addr-spec, you want a URI param ";uri-param=1234" and a header param ";header-param=9999". How would it look?:
Contact: sip:alice@dom.org;uri-param=1234;header-param=9999
i can claim that you cannot use addr-spec if you want to use header params, i.e., you must use <>s and haeder params will follow.
If you were right, how to determine that ;uri-param is a URI param and ;header-param is a header param? There is no way!
see above. if you want header param, you must use <> syntax.
So the only solution is using name-addr:
Contact: sip:alice@dom.org;uri-param=1234;header-param=9999
exactly, but if there are no <>s, then what? i can justify the claim that then all params are uri params.
This is a complex grammar in the RFC 3261, and there have been long discussions about it in sip-implementors maillist, you can search for them if you want.
i don't want, but it is really strange that there is such a bug in the grammar that has not been fixed by some other rfc.
Yes, of course, but then it CANNOT contain URI params, just header params.
that is just your opinion that so far you have not based on any fact in rfc3261.
-- juha