[Serusers] [Serdev] loose_route behaviour, detecting single Route with myself
Greger V. Teigre
greger at teigre.com
Tue Jul 17 13:39:06 CEST 2007
Nils Ohlmeier wrote:
> On Monday 16 July 2007 14:04:31 Greger V. Teigre wrote:
>
>> Ok, let me try to take a step back. This discussion is an example of why
>> ser.cfg sometimes seems like black magic for most users. It's very
>> complicated to get a generic config that works in most scenarios. What
>> we really need to make sure is that people can use the recommended black
>> magic in most cases, that it is intuitive how to add their own stuff,
>> and that we make it difficult to "break".. phew...
>>
>> What would a "normal" user like to know in ser.cfg?
>> 1. Do I need to process like an INVITE or do I t_relay?
>> 2. How do I open or prevent relaying?
>>
>> Ex. I am sure quite a lot of configs will let an INVITE with a
>> pre-loaded Route go through without authentication...
>>
>
> Which is not an issue as long as the RURI points to you. Because then you
> simply route the request to yourself with no Route header any more, and then
> it should be processed like a request without pre-loaded Route.
>
Right, but I was referring to the case where the ruri does not point to
you, but (most probably) a PSTN GW.
>
>> I still feel that preloaded_route() and in_dialog() would be simpler to
>> understand for most people.
>>
>
> Just to state it clearly: the names of these two function can not be
> implemented technically correct! Thus I would vote at least against the
> names.
>
I assume you here implicitly mean that they cannot be implemented
technically correct for both stateful and stateless? I assumed in my
suggestion that we can make an rr param work.
> If you use has_to_tag(), fine you should know what you are doing. But
> in_dialog() without being dialog statefull promisses to much.
>
>
Right, so maybe in_dialog should be found in tm?
>> I agree with Martin that maybe having a
>> separate function checking/removing/failing a pre-loaded route is
>> cleaner than letting loose_route() do it.
>>
>
> Ok. I'm still trying to evaluate if this is possible or not. See below for
> more details. But we are talking here about > 2.0 any way, right?
>
>
Indeed.
>> The problem of "non-2xx ACK with a preloaded route looks exactly the
>> same then a 2xx ACK" is a corner-case, and I don't see any solution
>> either, than the suggest uri param in the rr.
>>
>
> Just to make it clear to everybody: this "corner case" occurs in all setups
> with a stateless load balancer and where the INVITE gets challenged!
>
>
Yes, "corner case" was maybe misphrased. My point was that it does not
occur in every setup.
>> So, could we
>> automaticlly add the rr param if and only if the original INVITE is
>> forwarded statelessly?
>>
>
> I don't think so, because the rr module has no idea when you call
> record_route() how the request is going to be tramsitted.
>
Isn't uri params implemented differently in 2.0? Where the actual params
are added before relaying (based on avp)?
g-)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20070717/338b362a/attachment.htm>
More information about the sr-users
mailing list