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

Martin Hoffmann hn at nvnc.de
Fri Jul 13 16:08:30 CEST 2007


Nils Ohlmeier wrote:
> On Friday 13 July 2007 14:12:52 Martin Hoffmann wrote:
> > Nils Ohlmeier wrote:
> 
> > > But with this theory we are back to the original topic: is a TEL URI a
> > > local URI or not.
> >
> > I though that was solved. Only SIP and SIPS URI are allowed in Contact.
> > Your 2xx ACK will never have a TEL URI (unless the UA is broken in which
> > case someone should have sent a 400 back).
> 
> No. That is not true. Because you could receive a non-2xx ACK with a TEL RURI 
> and preloaded route. What now?

Depends on what you do with an INVITE. Same thing shall be done to that
ACK. Which means you cannot have loose_route() decide for you.
 
> > > Is just came to my mind that a possible solution could be to add some
> > > kind of secret information to our Record-Route headers.
> >
> > /me not like. Sounds like magic plus vendor specific extensions are
> > frowned upon in SIP.
> 
> Sure, they are. But I currently do not really see any option for this problem. 

Possibly, the problem is that loose_route() is trying to be smart. Maybe
it should be split in two. One function removes the topmost Route if
present and pointing to this proxy (it can return false if the Route is
all wrong and we can reply 4xx then), another one that allows to check
if there is a Route left. The rest is done in config.

Without reading 3261 again, I think this can be done in a way compatible
with strict routing.

Regards,
Martin



More information about the sr-users mailing list