diff options
author | Glenn Strauss <gstrauss@gluelogic.com> | 2022-05-24 14:57:30 -0400 |
---|---|---|
committer | Glenn Strauss <gstrauss@gluelogic.com> | 2022-05-24 21:56:30 -0400 |
commit | a01e62bb7d562d2176e5fc50811f0b22b30cdfa1 (patch) | |
tree | 3a7122f6f53b850a54ec31eadc4c57276ae88883 /src/t/test_burl.c | |
parent | 467fb2bfb7374d37cd6b0c9e617989e1b8ca6de4 (diff) | |
download | lighttpd-git-a01e62bb7d562d2176e5fc50811f0b22b30cdfa1.tar.gz |
[core] "url-invalid-utf8-reject" normalization opt
server.http-parseopts "url-invalid-utf8-reject" url normalization option
default: "url-invalid-utf8-reject" => "enable"
Diffstat (limited to 'src/t/test_burl.c')
-rw-r--r-- | src/t/test_burl.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/t/test_burl.c b/src/t/test_burl.c index 174d1c3c..fa9190ff 100644 --- a/src/t/test_burl.c +++ b/src/t/test_burl.c @@ -31,6 +31,11 @@ static void test_burl_normalize (void) { int flags; flags = HTTP_PARSEOPT_URL_NORMALIZE_UNRESERVED; + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/%C0"), CONST_STR_LEN("/%C0")); + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/\377"), CONST_STR_LEN("/%FF")); + + flags = HTTP_PARSEOPT_URL_NORMALIZE_UNRESERVED + | HTTP_PARSEOPT_URL_NORMALIZE_INVALID_UTF8_REJECT; run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("no-slash"), CONST_STR_LEN("no-slash")); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/"), CONST_STR_LEN("/")); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/abc"), CONST_STR_LEN("/abc")); @@ -53,11 +58,13 @@ static void test_burl_normalize (void) { run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/%3a"), CONST_STR_LEN("/%3A")); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/%3A"), CONST_STR_LEN("/%3A")); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/~test%20รค_"), CONST_STR_LEN("/~test%20%C3%A4_")); + run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/%C0"), "", (size_t)-2); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/\375"), "", (size_t)-2); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/\376"), "", (size_t)-2); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/\377"), "", (size_t)-2); - flags = HTTP_PARSEOPT_URL_NORMALIZE_REQUIRED; + flags = HTTP_PARSEOPT_URL_NORMALIZE_REQUIRED + | HTTP_PARSEOPT_URL_NORMALIZE_INVALID_UTF8_REJECT; run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/"), CONST_STR_LEN("/")); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/abc"), CONST_STR_LEN("/abc")); run_burl_normalize(psrc, ptmp, flags, __LINE__, CONST_STR_LEN("/abc/"), CONST_STR_LEN("/abc/")); |