mirror of
https://github.com/nginx/nginx.git
synced 2025-06-12 21:52:41 +08:00
Moved TRACE method rejection to a better place.
Previously, TRACE requests were rejected before parsing Transfer-Encoding. This is not important since keepalive is not enabled at this point anyway, though rejecting such requests after properly parsing other headers is less likely to cause issues in case of further code changes.
This commit is contained in:
parent
8b92710728
commit
d9c1d1bae7
@ -1980,13 +1980,6 @@ ngx_http_process_request_header(ngx_http_request_t *r)
|
||||
}
|
||||
}
|
||||
|
||||
if (r->method == NGX_HTTP_TRACE) {
|
||||
ngx_log_error(NGX_LOG_INFO, r->connection->log, 0,
|
||||
"client sent TRACE method");
|
||||
ngx_http_finalize_request(r, NGX_HTTP_NOT_ALLOWED);
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
if (r->headers_in.transfer_encoding) {
|
||||
if (r->headers_in.transfer_encoding->value.len == 7
|
||||
&& ngx_strncasecmp(r->headers_in.transfer_encoding->value.data,
|
||||
@ -2013,6 +2006,13 @@ ngx_http_process_request_header(ngx_http_request_t *r)
|
||||
}
|
||||
}
|
||||
|
||||
if (r->method == NGX_HTTP_TRACE) {
|
||||
ngx_log_error(NGX_LOG_INFO, r->connection->log, 0,
|
||||
"client sent TRACE method");
|
||||
ngx_http_finalize_request(r, NGX_HTTP_NOT_ALLOWED);
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
return NGX_OK;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user