mirror of
https://github.com/nginx/nginx.git
synced 2025-01-05 21:53:01 -06:00
fix segfault when $host is used and
*) request is "GET http://host" without CR or LF, or timed out *) request is "GET http://host" with a large blank space
This commit is contained in:
parent
c996d3250d
commit
03011fa512
@ -1104,7 +1104,9 @@ ngx_http_alloc_large_header_buffer(ngx_http_request_t *r,
|
||||
|
||||
if (r->host_start) {
|
||||
r->host_start = new + (r->host_start - old);
|
||||
r->host_end = new + (r->host_end - old);
|
||||
if (r->host_end) {
|
||||
r->host_end = new + (r->host_end - old);
|
||||
}
|
||||
}
|
||||
|
||||
if (r->port_start) {
|
||||
|
@ -678,9 +678,13 @@ ngx_http_variable_host(ngx_http_request_t *r, ngx_http_variable_value_t *v,
|
||||
v->data = r->server_name.data;
|
||||
}
|
||||
|
||||
} else {
|
||||
} else if (r->host_end) {
|
||||
v->len = r->host_end - r->host_start;
|
||||
v->data = r->host_start;
|
||||
|
||||
} else {
|
||||
v->not_found = 1;
|
||||
return NGX_OK;
|
||||
}
|
||||
|
||||
v->valid = 1;
|
||||
|
Loading…
Reference in New Issue
Block a user