On 14 December 2014 at 21:40, Daniel-Constantin Mierla <[email protected]> wrote: > > Hello, > > looking at the patch, I see that the block for parsing first path uri: > > + if (parse_uri(path_dst.s, path_dst.len, &path_uri) < 0){ > + LM_ERR("failed to parse the Path URI\n"); > + ret = -3; > + goto done; > + } > > > Is done outside of parameter check: > > > + if (path_check_local > 0 > > > But seems to be used only inside it (when the parameter is set >0). It > should be moved inside that IF, to avoid parsing the path uri when the > parameter is not set, because that happens for each lookup. > > Yes, spotted that one already and it has been moved inside the parameter check.
> Another thing that has to be double-checked: you change the value of > ptr->path.s if there is a match of local URI for first path. That can mess > the structure from usrloc, if it needs to do a free later or is a pointer > inside shared memory that is going to be used later -- practically the > pointer is no longer at the beginning of allocated memory. I didn't have > time to look deeper in usrloc and all its db modes (iirc, for db-only, the > location record is temporarily built in memory and freed). The best and > safest for the future is to make a copy of the path str and work with it > inside the function where you need to change it > > str path_str; > > ... > path_str = ptr->path; > // and use path_str instead of ptr->path from here on > ... > > Sorry, oversight on my part, will make a copy and work with that instead. > > The new parameter has to be documented in the readme as well. > > Of course :) Thanks for your time, Charles -- www.sipcentric.com Follow us on twitter @sipcentric <http://twitter.com/sipcentric> Sipcentric Ltd. Company registered in England & Wales no. 7365592. Registered office: Faraday Wharf, Innovation Birmingham Campus, Holt Street, Birmingham Science Park, Birmingham B7 4BB.
_______________________________________________ sr-dev mailing list [email protected] http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
