Mercurial > hg > nginx
diff src/http/ngx_http_request.h @ 3064:23e6f26fb4bd
*) ngx_http_ephemeral
*) use preallocated terminal_posted_request
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sun, 30 Aug 2009 09:47:11 +0000 |
parents | 6060225e9261 |
children | 113cd532b328 |
line wrap: on
line diff
--- a/src/http/ngx_http_request.h Sun Aug 30 09:42:29 2009 +0000 +++ b/src/http/ngx_http_request.h Sun Aug 30 09:47:11 2009 +0000 @@ -510,6 +510,21 @@ /* used to parse HTTP headers */ ngx_uint_t state; + + ngx_uint_t header_hash; + ngx_uint_t lowcase_index; + u_char lowcase_header[NGX_HTTP_LC_HEADER_LEN]; + + u_char *header_name_start; + u_char *header_name_end; + u_char *header_start; + u_char *header_end; + + /* + * a memory that can be reused after parsing a request line + * via ngx_http_ephemeral_t + */ + u_char *uri_start; u_char *uri_end; u_char *uri_ext; @@ -523,18 +538,15 @@ u_char *host_end; u_char *port_start; u_char *port_end; - u_char *header_name_start; - u_char *header_name_end; - u_char *header_start; - u_char *header_end; unsigned http_minor:16; unsigned http_major:16; +}; - ngx_uint_t header_hash; - ngx_uint_t lowcase_index; - u_char lowcase_header[NGX_HTTP_LC_HEADER_LEN]; -}; + +typedef struct { + ngx_http_posted_request_t terminal_posted_request; +} ngx_http_ephemeral_t; extern ngx_http_header_t ngx_http_headers_in[];