[Serusers] loose_route()

Jan Janak jan at iptel.org
Mon Jan 30 23:17:33 CET 2006


The decision whether after_loose or after_strict will be called is based on the
Request-URI of the request. If the Request-URI hostname part contains
the IP or hostname of the proxy which received the request then it
assumes that the previous hop was strict router. If the previous hop was
loose router then the Request-URI should contain the Contact header of
UA2 and that should not be matched by (uri==myself).

  Jan.

On 30-01-2006 19:34, JF wrote:
> Hi,
> 
> One of my (Open)SER machines (P1) is acting as registrar and so I have
> alias=mydomain.tld in the script; it is used in the (uri == myself)
> check to handle REGISTER requests.
> 
> I have a setup like this:
> 
> UA1 (user1 at mydomain.tld) - P2 - P1 - P3 - P1 - P2 - UA2 (user2 at mydomain.tld)
> (all proxies are record-routing except P3)
> 
> For initial requests (INVITE from UA1 to UA2) all is fine. But I'm
> having problems with the loose_route() function, because when an
> in-dialog (subsequent) request comes into P1 (from UA1, P2) with a
> Route header containing (<P1>, <P1>, <P2>), the after_strict()
> function is called, when I would expect the after_loose() function to
> be called since P1 is a loose router.
> Within loose_route(), is_preloaded() returns 0, which is correct. But
> then is_myself returns true because of the alias...
> 
> Is this a bug in loose_route() which doesn't account for this kind of
> setup (Routeing in-dialog requests through the registrar)? Maybe this
> could be avoided, if there was a parameter forcing loose_route to
> treat previous hop as a loose router... Or am I just doing something
> wrong?
> 
> Thanks in advance,
> JF
> 
> _______________________________________________
> Serusers mailing list
> serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers




More information about the sr-users mailing list