Of course I assume that modules dont implement unescaping uris encoded as URI param value. That needs to be coded.

Anyhow, why is the received stuff required at all? IMHO it is time for dropping custom/proprietary hacks and use rfc 5626 Outbound instead. Otherwise we must live with hacks in lot of places of the code and modules.

--
Iñaki Baz Castillo
<ibc@aliax.net>

El 10/04/2013 11:31, "Juha Heinanen" <jh@tutpro.com> escribió:
Juha Heinanen writes:

> i tested and even when url path field contains escaped chars.  however,
> i started to get these to syslog every 20 seconds
>
> Apr 10 12:17:08 wheezy1 /usr/sbin/sip-proxy[3900]: ERROR: nathelper [nathelper.c:2018]: can't parse contact uri
>
>
> most likely due to nat pinging.  i haven't checked yet where they come
> from.  contact field of the ua does not have any escaped chars in it.

i added the uri to the error message and got:

nathelper [nathelper.c:2019]: can't parse contact uri 'sip:192.98.102.11:35453%3Btransport%3Dtcp'

single quotes are from my LM_ERR below, i.e., they are not in the uri
itself.  the uri in question is received uri and the call in nathelper.c
is this:

                        if (parse_uri(c.s, c.len, &curi) < 0) {
                            LM_ERR("can't parse contact uri '%.*s'\n",
                                   c.len, c.s);

so there clearly is a bug in parse_uri function.  it cannot handle
escaped chars.

when i have time, i'll add tracker issue about it.

-- juha

_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users