@@ -204,11 +204,11 @@ GET /lua
204204--- config
205205 location /lua {
206206 content_by_lua_block {
207- ngx.say(ngx.escape_uri("https://www.google.com", ngx.ESCAPE_URI ))
208- ngx.say(ngx.escape_uri("https://www.google.com/query?q=test", ngx.ESCAPE_URI ))
209- ngx.say(ngx.escape_uri("https://www.google.com/query?\r\nq=test", ngx.ESCAPE_URI ))
210- ngx.say(ngx.escape_uri("-_.~!*' ();: @&= + $ ,/? # ", ngx.ESCAPE_URI ))
211- ngx. say(ngx. escape_uri("<>[]{}\\\" ", ngx.ESCAPE_URI ))
207+ ngx.say(ngx.escape_uri("https://www.google.com", 0 ))
208+ ngx.say(ngx.escape_uri("https://www.google.com/query?q=test", 0 ))
209+ ngx.say(ngx.escape_uri("https://www.google.com/query?\r\nq=test", 0 ))
210+ ngx.say(ngx.escape_uri("-_.~!*' ();: @&= + $ ,/? # ", 0 ))
211+ ngx. say(ngx. escape_uri("<>[]{}\\\" ", 0 ))
212212 }
213213 }
214214--- request
@@ -228,13 +228,13 @@ https://www.google.com/query%3F%0D%0Aq=test
228228--- config
229229 location /lua {
230230 content_by_lua_block {
231- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_URI ))
232- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_ARGS ))
233- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_URI_COMPONENT ))
234- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_HTML ))
235- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_REFRESH ))
236- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_MEMCACHED ))
237- ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , ngx.ESCAPE_MAIL_AUTH ))
231+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 0 ))
232+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 1 ))
233+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 2 ))
234+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 3 ))
235+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 4 ))
236+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 5 ))
237+ ngx.say(ngx.escape_uri(" https: // www. google. com/? t= abc@ : " , 6 ))
238238 }
239239 }
240240--- request
@@ -263,22 +263,22 @@ https://www.google.com/?t=abc@%20:
263263GET /lua
264264--- error_code: 500
265265--- error_log eval
266- qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: " esc_type " \-1 out of range/
266+ qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: " type " \-1 out of range/
267267
268268
269269
270270=== TEST 18: escape type out of range
271271--- config
272272 location /lua {
273273 content_by_lua_block {
274- ngx. say (ngx. escape_uri(" https://www.google.com" , 100 ))
274+ ngx. say (ngx. escape_uri(" https://www.google.com" , 10 ))
275275 }
276276 }
277277--- request
278278GET /lua
279279--- error_code: 500
280280--- error_log eval
281- qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: " esc_type " 100 out of range/
281+ qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: " type " 10 out of range/
282282
283283
284284
@@ -293,4 +293,4 @@ qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: "esc_type"
293293GET /lua
294294--- error_code: 500
295295--- error_log eval
296- qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: " esc_type " is not number/
296+ qr/\[error\] \d+#\d+: \*\d+ lua entry thread aborted: runtime error: " type " is not number/
0 commit comments