[Serusers] [Serdev] loose_route behaviour, detecting single Route with myself

Nils Ohlmeier nils at iptel.org
Thu Jul 12 16:13:20 CEST 2007


On Thursday 12 July 2007 15:24:59 Klaus Darilion wrote:
> Nils Ohlmeier wrote:
> > On Thursday 12 July 2007 09:03:39 Klaus Darilion wrote:
> >> I totally agree with you, e.g:
> >>
> >> if (in_dialog()) { # probably an alias to has_totag()
> >
> > No. The To-tag is not enough as criteria for in-dialog. And unfortunately
> > the presence of Route isn't as well.
> >
> > You can basically have these type of ACKs (ACKs illustrate the worst
> > case): - the UAC uses an outbound proxy without a Route header
> >   - the in-dialog ACK will have a To-tag and a Route header
> >   - the out-of-dialog ACK will have a To-tag and no Route header
> > - the UAC uses a Route header for its outbound proxy
> >   - then in-dialog ACK will have a To-tag and a Route header (same as
> > above) - the out-of-dialog ACK will have a To-tag and a Route header (and
> > this is the problematic case!)
>
> Is it really necessary to differ this cases in ser.cfg? I usually just
> t_relay() the ACKs as tm module should know if this is a 2xx ACK or a
> non-2xx ACK.
>
> If you need this information in ser.cfg, then having a function
> t_is_ack_local() would be useful.

I did not claimed that I want this information to be available in the config.
You suggested to export it via the return code.

But as I pointed out to Martin in the other mail, the point is that non-2xx 
and 2xx ACKs should also be routed correctly in case of stateless forwarding. 
So telling everybody just call t_relay() for all ACKs, it will take care of 
it, is IMHO no acceptable option.

Best Regards
  Nils Ohlmeier


More information about the Serusers mailing list