On Saturday 08 October 2011, IƱaki Baz Castillo wrote:
[RFC 5826]
Hi Inaki,
sounds really interesting, thanks for bringing this up here.
Some other collateral changes needed for the above to
work properly:
- 430 status code MUST have less priority than any other 4XX response
since such 430 response can only be replied by edge proxies and means
"the TCP/TLS connection with the user is closed".
What about the 439 code, i guess we need support in the server for this as
well?
- We need two new fields in the registration backend
for storing the
";+sip.instance" and ";reg-id" param.
- When a TCP connection is made from a client, Kamailio has to create
a flow token identifier for such connection.
- We need a new "loose_route_outbound()" function that adds a
Record-Route whose URI username matches the flow token associated to
the connection from which the request comes.
- When a request arrives to Kamailio and contains a Route header
pointing to us and containing a Route with username, then Kamailio
must inspect the URI username to know which connection to use for
routing such request (don't trust the RURI as it would be the private
URI of a Contact header). Don't mangle the Contact header please, no
more request/response mangling.
- Summarizing, RFC 5626 requires additions to:
- registrar module
- location module
- rr module
For the 430 prioriziation issue you mentiod this probably needs to be changed
in the tm module.
Best regards,
Henning