[nginx] SPDY: fixed "too long header line" logging.

Maxim Dounin mdounin at mdounin.ru
Fri Nov 7 15:26:59 UTC 2014


details:   http://hg.nginx.org/nginx/rev/234c5ecb00c0
branches:  
changeset: 5899:234c5ecb00c0
user:      Maxim Dounin <mdounin at mdounin.ru>
date:      Fri Nov 07 17:38:55 2014 +0300
description:
SPDY: fixed "too long header line" logging.

This fixes possible one byte buffer overrun and makes sure ellipsis are
always added, see 21043ce2a005.

diffstat:

 src/http/ngx_http_spdy.c |  3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diffs (16 lines):

diff --git a/src/http/ngx_http_spdy.c b/src/http/ngx_http_spdy.c
--- a/src/http/ngx_http_spdy.c
+++ b/src/http/ngx_http_spdy.c
@@ -2656,11 +2656,10 @@ ngx_http_spdy_alloc_large_header_buffer(
 
         if (rest > NGX_MAX_ERROR_STR - 300) {
             rest = NGX_MAX_ERROR_STR - 300;
-            p[rest++] = '.'; p[rest++] = '.'; p[rest++] = '.';
         }
 
         ngx_log_error(NGX_LOG_INFO, r->connection->log, 0,
-                      "client sent too long header name or value: \"%*s\"",
+                      "client sent too long header name or value: \"%*s...\"",
                       rest, p);
 
         return NGX_DECLINED;



More information about the nginx-devel mailing list