On 10.11.2010 13:13, Bogdan-Andrei Iancu wrote:
Hi Victor,

That is strict routing - in SIP you have 2 types of routing - Strict
Routing (old one) and Loose Routing (new one).

I see about strict and loose routing :-)

I can not understand how loose_route() process requests :-(

But in your case, the previous hop is strict route (this is why you have
opensips IP in RURI)

hmmm

and next hop (next Route) is a Loose Route (see the
lr param). So OpenSIPS is doing a Strict to Loose Routing conversion..

Lost you? :D

:-)

No problems!

I hope that loose_route() will process Route headers not RURI.

RFC-3261 16.4 says that
"The proxy MUST inspect the Request-URI of the request.  If the
   Request-URI of the request contains a value this proxy previously
   placed into a Record-Route header field (see Section 16.6 item 4),
   the proxy MUST replace the Request-URI in the request with the last
   value from the Route header field, and remove that value from the
   Route header field.  The proxy MUST then proceed as if it received
   this modified request."

So loose_route() inspect R-URI.   But R-URI
sip:74951000...@x.x.x.x:5060
is not the same as inserted into Route
(sip:X.X.X.X;lr=on;ftag=2204003977).

So Route header
Route: <sip:X.X.X.X;lr=on;ftag=2204003977>
removed, R-URI untouched, next Route processed and $du is sip:X.X.X.X:50080 now.

As my script does not decide to call lookup() but t_relay(), then request forwarded to $du.

This was my (incorrect) logic...

--
CU,
Victor Gamov

<<attachment: vit.vcf>>

_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to