Mercurial > hg > nginx
changeset 4637:668ab1a21327
Zero padded the returned and logged HTTP status code, and fixed possible
buffer overrun in $status handling.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Wed, 16 May 2012 13:27:04 +0000 |
parents | ed957e0daeb4 |
children | 6e1a48bcf915 |
files | src/http/modules/ngx_http_log_module.c src/http/ngx_http_header_filter_module.c |
diffstat | 2 files changed, 3 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/modules/ngx_http_log_module.c Wed May 16 13:22:03 2012 +0000 +++ b/src/http/modules/ngx_http_log_module.c Wed May 16 13:27:04 2012 +0000 @@ -205,7 +205,7 @@ { ngx_string("msec"), NGX_TIME_T_LEN + 4, ngx_http_log_msec }, { ngx_string("request_time"), NGX_TIME_T_LEN + 4, ngx_http_log_request_time }, - { ngx_string("status"), 3, ngx_http_log_status }, + { ngx_string("status"), NGX_INT_T_LEN, ngx_http_log_status }, { ngx_string("bytes_sent"), NGX_OFF_T_LEN, ngx_http_log_bytes_sent }, { ngx_string("body_bytes_sent"), NGX_OFF_T_LEN, ngx_http_log_body_bytes_sent }, @@ -593,7 +593,7 @@ status = 0; } - return ngx_sprintf(buf, "%ui", status); + return ngx_sprintf(buf, "%03ui", status); }
--- a/src/http/ngx_http_header_filter_module.c Wed May 16 13:22:03 2012 +0000 +++ b/src/http/ngx_http_header_filter_module.c Wed May 16 13:27:04 2012 +0000 @@ -445,7 +445,7 @@ b->last = ngx_copy(b->last, status_line->data, status_line->len); } else { - b->last = ngx_sprintf(b->last, "%ui", status); + b->last = ngx_sprintf(b->last, "%03ui", status); } *b->last++ = CR; *b->last++ = LF;