]> git.kaiwu.me - nginx.git/commitdiff
SSL: handled long string truncation in ngx_ssl_error().
authorVladimir Homutov <vl@nginx.com>
Wed, 7 Oct 2015 19:19:42 +0000 (22:19 +0300)
committerVladimir Homutov <vl@nginx.com>
Wed, 7 Oct 2015 19:19:42 +0000 (22:19 +0300)
If no space left in buffer after adding formatting symbols, error message
could be left without terminating null.  The fix is to output message using
actual length.

src/event/ngx_event_openssl.c

index e9edf314fe53043035467e3efa2473c38452f73b..8550da9a90ce646c23fabbf540a333b5acc9f006 100644 (file)
@@ -2045,7 +2045,7 @@ ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
         (void) ERR_get_error();
     }
 
-    ngx_log_error(level, log, err, "%s)", errstr);
+    ngx_log_error(level, log, err, "%*s)", p - errstr, errstr);
 }