[reSIProcate] Uri changes, encoding of #

Daniel Pocock daniel at readytechnology.co.uk
Mon Jul 31 17:20:04 CDT 2006



I've just committed changes to Uri:

- typo correction
- use of lookup tables (std::bitset) for checking which characters to 
encode, for better performance
- runtime configuration of the lookup tables, for compatibility

Typically, the runtime configuration means forcing Uri to behave in 
non-standard ways, for compatibility with non-standard user agents.

E.g. if you are sending calls to a carrier who expects you to insert 
1234# at the beginning of each number, and the carrier is rejecting the 
calls with the encoded (%23) version of #, then calling this static 
method before constructing any Uris will let you send him the type of 
Uri he may be expecting:

Uri::setUriUserEncoding('#', false);

I realise resip::Uri is pretty fundamental to the whole stack, I'd 
appreciate it if someone could have a look at what I've committed and 
make sure nothing is broken.



More information about the resiprocate-devel mailing list