diff options
author | Mark Lodato <lodatom@gmail.com> | 2010-02-09 10:12:43 -0500 |
---|---|---|
committer | Mark Lodato <lodatom@gmail.com> | 2010-02-09 10:12:43 -0500 |
commit | a2c6355f9fdede78ce46aeee39ef649637aaadf9 (patch) | |
tree | 4ed595f688691e7a35c5684ca59164bcc777b74c /cache.c | |
parent | html: make all strings 'const char *' (diff) | |
download | cgit-pink-a2c6355f9fdede78ce46aeee39ef649637aaadf9.tar.gz cgit-pink-a2c6355f9fdede78ce46aeee39ef649637aaadf9.zip |
html: properly percent-escape URLs
The only valid characters for a URL are unreserved characters a-zA-Z0-9_-.~ and the reserved characters !*'();:@&=+$,/?%#[] , as per RFC 3986. Everything else must be escaped. Additionally, the # and ? always have special meaning, and the &, =, and + have special meaning in a query string, so they too must be escaped. To make this easier, a table of escapes is now used so that we do not have to call fmt() for each character; if the entry is 0, no escaping is needed. Signed-off-by: Mark Lodato <lodatom@gmail.com>
Diffstat (limited to 'cache.c')
0 files changed, 0 insertions, 0 deletions