[Users] strict to loose - Route Header not removed
Walter Schober
walter.schober at neotel.at
Thu May 11 10:25:10 CEST 2006
Hi Bogdan!
I can verify, that the patch is working correctly now!
Now the correct headers are removed and the routing is right.
Thanks!
Br Walter
P.S.: Logs are the same than below, so I don't add it here.
-----Original Message-----
From: Bogdan-Andrei Iancu [mailto:bogdan at voice-system.ro]
Sent: Wednesday, May 10, 2006 9:38 PM
To: Walter Schober
Cc: users at openser.org
Subject: Re: [Users] strict to loose - Route Header not removed
Hi Walter,
I will try to take a look on the issue from 2).
Also find attached the patch against the latest devel version - please
give it a try a let me know if it fixes your problem.
regards,
bogdan
Walter Schober wrote:
>Hi Bogdan!
>
>1) OpenSER forwards the INVITE correctly including the ;lr parameter. It's
>the PSTN GW sending a "strict" ACK. They will fix it. Currently I just take
>this GW to reproduce the issue. Yes, 111.222.333.132 is the OS proxy.
>
>2) I do also believe that it recognizes itself, although grep_sock_info()
>returns false. This runs on a test system with that single call only and
>yes, this is all the log.
>Another issue I see here:
>If openser is started with the -l parameter, there is no listener
configured
>on the IP (address - just the aliases via /etc/hosts). It seems to look
into
>the hosts file, resolves reverse via hosts file and uses the first hostname
>in the hostfile in the grep_sock_info(). So it always compares the incoming
>IP with the first hostname in /etc/hosts correlated to that IP.
>This doesn't happen, if I specify the listen=udp:111.222.333.132:5060 in
the
>script and omit the -l option.
>Nevertheless I guess, that's not the problem for the strict routing.
>
>3) It would be great, if you could provide me with that patch to either the
>latest CVS snapshot or the 1.0.0 official source.
>It's just to verify if it solves my problem, otherwise I will look into it.
>
>Br
>Walter
>
>-----Original Message-----
>From: Bogdan-Andrei Iancu [mailto:bogdan at voice-system.ro]
>Sent: Wednesday, May 10, 2006 12:37 PM
>To: Walter Schober
>Cc: users at openser.org
>Subject: Re: [Users] strict to loose - Route Header not removed
>
>HI Walter,
>
>I see here three problems:
>
>1) as I guess your proxy IP is 111.222.333.132, I find rather strange
>why the ACK RURI does not contain the "lr" parameter - OpenSER does only
>loose routing and inserts the RR hdr with "lr" and "ftag" params all the
>time. Can you check this in the INVITE and 200 OK? It might be a bug in
>the phone also.
>
>2) even if the proxy does recognize the 111.222.333.132 IP as its own
>(as it follows the "after_strict" processing), not sure why you get this
>"check_self: host != me". Is the output log continuous?
>
>3) indeed there was a bug in RR "after_strict" processing. I fixed it,
>but I cannot commit it since thanks no SF none of the repository is
>online (CVS or SVN) :(.
>
>If yo need it fast, I can generate a patch for you to be able to test.
>
>Thanks and regards,
>Bogdan
>
>
>
>
>Walter Schober wrote:
>
>
>
>>0(30621) parse_headers: flags=200
>>0(30621) is_preloaded: No
>>0(30621) grep_sock_info - checking if host==us: 13==3 &&
>>
>>
>[111.222.333.132]
>
>
>>== [os0]
>>0(30621) grep_sock_info - checking if port 5060 matches port 5060
>>0(30621) grep_sock_info - checking if host==us: 13==3 &&
>>
>>
>[111.222.333.130]
>
>
>>== [os0]
>>0(30621) grep_sock_info - checking if port 5060 matches port 5084
>>0(30621) grep_sock_info - checking if host==us: 13==3 &&
>>
>>
>[111.222.333.130]
>
>
>>== [os0]
>>0(30621) grep_sock_info - checking if port 5060 matches port 5084
>>
>>Is this the problem?
>>0(30621) check_self: host != me
>>0(30621) after_strict: Next hop: 'sip:111.222.333.130:5084;lr' is loose
>>router
>>0(30621) parse_headers: flags=ffffffffffffffff
>>0(30621) rewrite_uri: Rewriting Request-URI with
>>'sip:0720123456 at 111.222.333.129:5060;x-orig=111.222.444.61:5064;x-orig-nat
=
>>
>>
>1
>
>
>>92.168.40.4:5064'
>>0(30621) after_strict: The last route URI:
>>'sip:0720123456 at 111.222.333.129:5060;x-orig=111.222.444.61:5064;x-orig-nat
=
>>
>>
>1
>
>
>>92.168.40.4:5064'
>>0(30621) xl_printf: final buffer length 18
>>
>>Openser 1.0.0.
>>
>>Br
>>Walter
>>
>>-----Original Message-----
>>From: users-bounces at openser.org [mailto:users-bounces at openser.org] On
>>
>>
>Behalf
>
>
>>Of Walter Schober
>>Sent: Wednesday, May 10, 2006 8:25 AM
>>To: users at openser.org
>>Subject: [Users] strict to loose - Route Header not removed
>>
>>Hello!
>>
>>Acc to 3261, 16.4:
>>the proxy MUST replace the Request-URI in the request with the last
>>value from the Route header field, and remove that value from the
>>Route header field. The proxy MUST then proceed as if it received
>>this modified request.
>>
>>The loose_route() function does only the half on my
>>if (looose_route()) {
>> ..
>> t_relay()
>> ..
>>}
>>script. It replaces the RURI with the value of the last Route header,
>>but then doesn't remove it, causing problems on the last hop.
>>
>>The strict.txt contains a ACK with comes in strict and leaves loose -
>>with the Route header.
>>
>>Aliases are configured with ip.ip.ip.ip and ip.ip.ip.ip:5060.
>>
>>Why is the Route header not stripped?
>>
>>Walter
>>
>>
>>
>>_______________________________________________
>>Users mailing list
>>Users at openser.org
>>http://openser.org/cgi-bin/mailman/listinfo/users
>>
>>
>>
>>
>>
>
>
>
>
>
More information about the Users
mailing list