blob: 9ed2c51d600f2a94400ddaedf2f617e14103fc70 [file] [log] [blame]
To make sure that filenames are encoded safely for Network Persistence.
www.example.com/ -> www.example.com/index.html
www.example.com/simple -> www.example.com/simple
www.example.com/hello/foo/bar -> www.example.com/hello/foo/bar
www.example.com/. -> www.example.com/%2e
example.com/CON -> example.com/%43%4f%4e
example.com/cOn -> example.com/%63%4f%6e
example.com/cOn/hello -> example.com/%63%4f%6e/hello
example.com/PRN -> example.com/%50%52%4e
example.com/AUX -> example.com/%41%55%58
example.com/NUL -> example.com/%4e%55%4c
example.com/COM1 -> example.com/%43%4f%4d%31
example.com/COM2 -> example.com/%43%4f%4d%32
example.com/COM3 -> example.com/%43%4f%4d%33
example.com/COM4 -> example.com/%43%4f%4d%34
example.com/COM5 -> example.com/%43%4f%4d%35
example.com/COM6 -> example.com/%43%4f%4d%36
example.com/COM7 -> example.com/%43%4f%4d%37
example.com/COM8 -> example.com/%43%4f%4d%38
example.com/COM9 -> example.com/%43%4f%4d%39
example.com/LPT1 -> example.com/%4c%50%54%31
example.com/LPT2 -> example.com/%4c%50%54%32
example.com/LPT3 -> example.com/%4c%50%54%33
example.com/LPT4 -> example.com/%4c%50%54%34
example.com/LPT5 -> example.com/%4c%50%54%35
example.com/LPT6 -> example.com/%4c%50%54%36
example.com/LPT7 -> example.com/%4c%50%54%37
example.com/LPT8 -> example.com/%4c%50%54%38
example.com/LPT9 -> example.com/%4c%50%54%39
example.com/fo?o/bar -> example.com/fo%3fo%2fbar
example.com/foo?/bar -> example.com/foo%3f%2fbar
example.com/foo/?bar -> example.com/foo/%3fbar
example.com/foo/?bar -> example.com/foo/%3fbar
example.com/?foo/bar/3 -> example.com/%3ffoo%2fbar%2f3
example.com/?foo/bar/3#hello/bar -> example.com/%3ffoo%2fbar%2f3
example.com/#foo/bar/3hello/bar -> example.com/index.html
example.com/foo/bar/?3hello/bar -> example.com/foo/bar/%3f3hello%2fbar
example.com/foo/bar/#?3hello/bar -> example.com/foo/bar/index.html
example.com/foo.js# -> example.com/foo.js
example.com/foo.js. -> example.com/foo.js%2e
example.com/foo.js -> example.com/foo.js%20
example.com/foo .js -> example.com/foo%20.js
example.com///foo.js -> example.com/foo.js
example.com/// -> example.com/index.html
example.com/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars/THIS/PATH/IS_MORE_THAN/200/Chars -> example.com/longurls/Chars-141a715a
example.com/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars -> example.com/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars/THIS/PATH/IS_LESS_THAN/200/Chars