Hi everybody,

We came across a device that inserts some non-standard parameter into one
of the Via headers of request and has an issue dealing with situation when
this parameter is moved by our UAS to a different position of that
particular Via header in the response. Therefore, my question is: are we
actually required to preserve order of parameters in each Via or not? The
RFC is not very clear on that matter, all it says is:

8.2.6.2 Headers and Tags

[...]

   response MUST equal the CSeq field of the request.  The Via header
   field values in the response MUST equal the Via header field values
   in the request and MUST maintain the same ordering.

To me, this boils down to the question of what we call "equal" field
values, can the field values below be considered equal:

SIP/2.0/UDP 1.2.3.4:foo=bar;bar=baz

vs.

SIP/2.0/UDP 1.2.3.4:bar=baz;foo=bar

Speaking from experience, it's probably bad idea to bet on UAS keeping
order the same when developing your own UAC code, but if somebody
decides to do it, can they claim that you are violating RFC if you
don't?

Thanks!

-Maxim
_______________________________________________
Sip-implementors mailing list
Sip-implementors@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to