comparison src/http/v2/ngx_http_v2_filter_module.c @ 9213:23f109f0facc

Free nginx: changed server name.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 19 Feb 2024 03:12:06 +0300
parents 262c01782566
children de4208483315
comparison
equal deleted inserted replaced
9212:985b0bda403c 9213:23f109f0facc
113 ngx_http_v2_connection_t *h2c; 113 ngx_http_v2_connection_t *h2c;
114 ngx_http_core_loc_conf_t *clcf; 114 ngx_http_core_loc_conf_t *clcf;
115 ngx_http_core_srv_conf_t *cscf; 115 ngx_http_core_srv_conf_t *cscf;
116 u_char addr[NGX_SOCKADDR_STRLEN]; 116 u_char addr[NGX_SOCKADDR_STRLEN];
117 117
118 static const u_char nginx[5] = "\x84\xaa\x63\x55\xe7";
119 #if (NGX_HTTP_GZIP) 118 #if (NGX_HTTP_GZIP)
120 static const u_char accept_encoding[12] = 119 static const u_char accept_encoding[12] =
121 "\x8b\x84\x84\x2d\x69\x5b\x05\x44\x3c\x86\xaa\x6f"; 120 "\x8b\x84\x84\x2d\x69\x5b\x05\x44\x3c\x86\xaa\x6f";
122 #endif 121 #endif
123 122
123 static size_t nginx_name_len = ngx_http_v2_literal_size(NGINX_NAME);
124 static u_char nginx_name[ngx_http_v2_literal_size(NGINX_VER)];
125
124 static size_t nginx_ver_len = ngx_http_v2_literal_size(NGINX_VER); 126 static size_t nginx_ver_len = ngx_http_v2_literal_size(NGINX_VER);
125 static u_char nginx_ver[ngx_http_v2_literal_size(NGINX_VER)]; 127 static u_char nginx_ver[ngx_http_v2_literal_size(NGINX_VER)];
126 128
127 static size_t nginx_ver_build_len = 129 static size_t nginx_ver_build_len =
128 ngx_http_v2_literal_size(NGINX_VER_BUILD); 130 ngx_http_v2_literal_size(NGINX_VER_BUILD);
224 226
225 } else if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_BUILD) { 227 } else if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_BUILD) {
226 len += 1 + nginx_ver_build_len; 228 len += 1 + nginx_ver_build_len;
227 229
228 } else { 230 } else {
229 len += 1 + sizeof(nginx); 231 len += 1 + nginx_name_len;
230 } 232 }
231 } 233 }
232 234
233 if (r->headers_out.date == NULL) { 235 if (r->headers_out.date == NULL) {
234 len += 1 + ngx_http_v2_literal_size("Wed, 31 Dec 1986 18:00:00 GMT"); 236 len += 1 + ngx_http_v2_literal_size("Wed, 31 Dec 1986 18:00:00 GMT");
432 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0, 434 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0,
433 "http2 output header: \"server: %s\"", 435 "http2 output header: \"server: %s\"",
434 NGINX_VER_BUILD); 436 NGINX_VER_BUILD);
435 437
436 } else { 438 } else {
437 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, fc->log, 0, 439 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0,
438 "http2 output header: \"server: nginx\""); 440 "http2 output header: \"server: %s\"",
441 NGINX_NAME);
439 } 442 }
440 443
441 *pos++ = ngx_http_v2_inc_indexed(NGX_HTTP_V2_SERVER_INDEX); 444 *pos++ = ngx_http_v2_inc_indexed(NGX_HTTP_V2_SERVER_INDEX);
442 445
443 if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_ON) { 446 if (clcf->server_tokens == NGX_HTTP_SERVER_TOKENS_ON) {
458 } 461 }
459 462
460 pos = ngx_cpymem(pos, nginx_ver_build, nginx_ver_build_len); 463 pos = ngx_cpymem(pos, nginx_ver_build, nginx_ver_build_len);
461 464
462 } else { 465 } else {
463 pos = ngx_cpymem(pos, nginx, sizeof(nginx)); 466 if (nginx_name[0] == '\0') {
467 p = ngx_http_v2_write_value(nginx_name, (u_char *) NGINX_NAME,
468 sizeof(NGINX_NAME) - 1, tmp);
469 nginx_name_len = p - nginx_name;
470 }
471
472 pos = ngx_cpymem(pos, nginx_name, nginx_name_len);
464 } 473 }
465 } 474 }
466 475
467 if (r->headers_out.date == NULL) { 476 if (r->headers_out.date == NULL) {
468 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0, 477 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, fc->log, 0,