summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules/ngx_http_rewrite_module.c
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2012-06-29 17:28:41 +0000
committerMaxim Dounin <mdounin@mdounin.ru>2012-06-29 17:28:41 +0000
commit71b7e2294a68c802930b239e2ed2eda895206846 (patch)
tree5a3167e24aa68312f7a59e6f761d1ce33810e338 /src/http/modules/ngx_http_rewrite_module.c
parenta4b7871ac73e1ad33729a060ab0370d0c0293782 (diff)
downloadnginx-71b7e2294a68c802930b239e2ed2eda895206846.tar.gz
nginx-71b7e2294a68c802930b239e2ed2eda895206846.tar.bz2
Merge of r4636, r4637, r4638: config sanity checks.
*) Added syntax checking of the second parameter of the "split_clients" directive. *) Capped the status code that may be returned with "return" and "try_files". *) Zero padded the returned and logged HTTP status code, and fixed possible buffer overrun in $status handling.
Diffstat (limited to 'src/http/modules/ngx_http_rewrite_module.c')
-rw-r--r--src/http/modules/ngx_http_rewrite_module.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/http/modules/ngx_http_rewrite_module.c b/src/http/modules/ngx_http_rewrite_module.c
index 74d26e524..4081f8774 100644
--- a/src/http/modules/ngx_http_rewrite_module.c
+++ b/src/http/modules/ngx_http_rewrite_module.c
@@ -485,6 +485,12 @@ ngx_http_rewrite_return(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
} else {
+ if (ret->status > 999) {
+ ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
+ "invalid return code \"%V\"", &value[1]);
+ return NGX_CONF_ERROR;
+ }
+
if (cf->args->nelts == 2) {
return NGX_CONF_OK;
}