diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2014-06-13 12:08:30 +0200 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2014-06-13 12:08:34 +0200 |
commit | 4c0c3cfa02274fb76bca8552ea613346b00f6468 (patch) | |
tree | b96af5e6856ca6fe9fe5f1ed4e8138093448bfb7 | |
parent | bfcf332ff45fcca15897b84b3f24476559a17f85 (diff) | |
download | webfs-master.tar.gz |
Report + patch by Winston Weinert <winston@ml1.net>
-rw-r--r-- | ls.c | 19 |
1 files changed, 18 insertions, 1 deletions
@@ -136,11 +136,28 @@ init_quote(void) for (i = 0; i < 256; i++) do_quote[i] = (isalnum(i) || ispunct(i)) ? 0 : 1; + + /* + * From rfc 2396 section 2.2 "Reserved Characters": + * reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | + * "$" | "," + */ + do_quote[';'] = 1; + do_quote['/'] = 1; + do_quote['?'] = 1; + do_quote[':'] = 1; + do_quote['@'] = 1; + do_quote['&'] = 1; + do_quote['='] = 1; do_quote['+'] = 1; + do_quote['$'] = 1; + do_quote[','] = 1; + + /* Escape erroneous anchors, escapes, and quotes */ do_quote['#'] = 1; do_quote['%'] = 1; do_quote['"'] = 1; - do_quote['?'] = 1; + do_quote['\''] = 1; } char* |