diff --git a/ngx_http_fancyindex_module.c b/ngx_http_fancyindex_module.c index 0487cf7..5db3b6d 100644 --- a/ngx_http_fancyindex_module.c +++ b/ngx_http_fancyindex_module.c @@ -450,6 +450,8 @@ ngx_fancyindex_escape_filename(u_char *dst, u_char *src, size_t size) switch (*psrc++) { case ':': case '?': + case '[': + case ']': escapes++; break; } @@ -491,6 +493,16 @@ ngx_fancyindex_escape_filename(u_char *dst, u_char *src, size_t size) *dst++ = '3'; *dst++ = 'F'; break; + case '[': + *dst++ = '%'; + *dst++ = '5'; + *dst++ = 'B'; + break; + case ']': + *dst++ = '%'; + *dst++ = '5'; + *dst++ = 'D'; + break; default: *dst++ = *buf; }