Mercurial > hg > nginx
comparison src/http/v2/ngx_http_v2_filter_module.c @ 6449:e5076b96fd01
Reconsidered server_tokens with an empty value.
An empty value will be treated as "off".
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Tue, 22 Mar 2016 15:52:28 +0300 |
parents | 602dc42035fe |
children | 155871d773cc |
comparison
equal
deleted
inserted
replaced
6448:4d1d3c2530e0 | 6449:e5076b96fd01 |
---|---|
250 != NGX_OK) | 250 != NGX_OK) |
251 { | 251 { |
252 return NGX_ERROR; | 252 return NGX_ERROR; |
253 } | 253 } |
254 | 254 |
255 if (tokens.len == 3 | 255 if (tokens.len == 0 |
256 && ngx_strncmp(tokens.data, "off", 3) == 0) | 256 || (tokens.len == 3 && ngx_strncmp(tokens.data, "off", 3) == 0)) |
257 { | 257 { |
258 server_tokens = 0; | 258 server_tokens = 0; |
259 len += 1 + sizeof(nginx); | 259 len += 1 + sizeof(nginx); |
260 ngx_str_set(&tokens, "nginx"); | 260 ngx_str_set(&tokens, "nginx"); |
261 | 261 |
262 } else if (tokens.len) { | 262 } else { |
263 server_tokens = 1; | 263 server_tokens = 1; |
264 len += 1 + nginx_ver_len; | 264 len += 1 + nginx_ver_len; |
265 ngx_str_set(&tokens, NGINX_VER); | 265 ngx_str_set(&tokens, NGINX_VER); |
266 } | 266 } |
267 } | 267 } |
466 *pos++ = ngx_http_v2_inc_indexed(NGX_HTTP_V2_STATUS_INDEX); | 466 *pos++ = ngx_http_v2_inc_indexed(NGX_HTTP_V2_STATUS_INDEX); |
467 *pos++ = NGX_HTTP_V2_ENCODE_RAW | 3; | 467 *pos++ = NGX_HTTP_V2_ENCODE_RAW | 3; |
468 pos = ngx_sprintf(pos, "%03ui", r->headers_out.status); | 468 pos = ngx_sprintf(pos, "%03ui", r->headers_out.status); |
469 } | 469 } |
470 | 470 |
471 if (r->headers_out.server == NULL && tokens.len) { | 471 if (r->headers_out.server == NULL) { |
472 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0, | 472 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0, |
473 "http2 output header: \"server: %V\"", | 473 "http2 output header: \"server: %V\"", |
474 &tokens); | 474 &tokens); |
475 | 475 |
476 *pos++ = ngx_http_v2_inc_indexed(NGX_HTTP_V2_SERVER_INDEX); | 476 *pos++ = ngx_http_v2_inc_indexed(NGX_HTTP_V2_SERVER_INDEX); |