[OpenSER-Users] Problem with handling 3xx responses and contact with maddr

Klaus Darilion klaus.mailinglists at pernau.at
Thu Jul 26 15:04:11 CEST 2007


Thus, checking the ruri does not make sense in case of maddr parameter 
is present.

e.g:

INVITE sip:user at gooddomain.com;maddr=baddomain.com

route{
   if (uri =~ "@gooddomain.com") {
     t_relay();
...

Thus, adding routing based on maddr may cause security problems with 
existing config files.

btw: why is the maddr parameter needed at all? Sending to a different 
target as announced in the RURI could be done with a Route: header too.

regards
klaus

Bogdan-Andrei Iancu wrote:
> Klaus,
> 
> RFC3261 defines maddr as "host" which can be "hostname / IPv4address / 
> IPv6reference".
> 
> Regards,
> Bogdan
> 
> Klaus Darilion wrote:
>> May maddr be a domain?
>>
>> Bogdan-Andrei Iancu wrote:
>>> Hi Brad,
>>>
>>> There still an issue that need to be fixed in openser: if the RURI 
>>> contains maddr, this should be used for sending the message to:
>>>    sip:1234 at domain.com;maddr=1.2.3.4
>>> should be sent to 1.2.3.4 and not to domain.com
>>>
>>> There is already a bug report on that and I hope it will be fixes soon.
>>>
>>> Regards,
>>> Bogdan
>>>
>>>
>>> Watkins, Bradley wrote:
>>>> Just as a follow-up to my own problem, I think I understand better
>>>> what's happening (and have a band-aid/workaround).
>>>>
>>>> It seems as though (and feel free to correct me if I'm wrong), OpenSER
>>>> at present does not differentiate URIs when they are identical 
>>>> excepting
>>>> for the addition of the maddr parameter.  RFC 3261, in section 19.1.4
>>>> URI Comparison, states "A URI that includes an maddr parameter will not
>>>> match a URI that contains no maddr parameter."
>>>>
>>>> So:
>>>>
>>>> sip:1234 at domain.com != sip:1234 at domain.com;maddr=1.2.3.4
>>>>
>>>> This, in essence, is exactly what the Nortel system is doing.
>>>>
>>>> The result seems to be that any attempt to push such a URI to $ru and
>>>> then append_branch() fails.
>>>>
>>>> My workaround is this:  change the user part before the avp_pushto()
>>>> call, then change it back in a branch_route after the append_branch().
>>>>
>>>> It seems to be working so far, except that it seems to create two
>>>> branches rather than one.  That's quite possibly (probably...) my 
>>>> fault,
>>>> as my script at the moment is pretty hacked up.  I'll sound the 
>>>> alarm if
>>>> I determine for sure that I'm not the culprit. ;)
>>>>
>>>> - Brad
>>>> The contents of this e-mail are intended for the named addressee 
>>>> only. It contains information that may be confidential. Unless you 
>>>> are the named addressee or an authorized designee, you may not copy 
>>>> or use it, or disclose it to anyone else. If you received it in 
>>>> error please notify us immediately and then destroy it.
>>>>
>>>>   
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at openser.org
>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>
> 




More information about the Users mailing list