Mercurial > hg > nginx-mail
comparison src/http/ngx_http_request.h @ 665:0b460e61bdcd default tip
Merge with nginx 1.0.0.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 25 Apr 2011 04:22:17 +0400 |
parents | ce857f6b74a7 |
children |
comparison
equal
deleted
inserted
replaced
572:06419a2298a9 | 665:0b460e61bdcd |
---|---|
8 #define _NGX_HTTP_REQUEST_H_INCLUDED_ | 8 #define _NGX_HTTP_REQUEST_H_INCLUDED_ |
9 | 9 |
10 | 10 |
11 #define NGX_HTTP_MAX_URI_CHANGES 10 | 11 #define NGX_HTTP_MAX_URI_CHANGES 10 |
12 #define NGX_HTTP_MAX_SUBREQUESTS 50 | 12 #define NGX_HTTP_MAX_SUBREQUESTS 50 |
13 #define NGX_HTTP_MAX_CAPTURES 9 | |
14 | 13 |
15 /* must be 2^n */ | 14 /* must be 2^n */ |
16 #define NGX_HTTP_LC_HEADER_LEN 32 | 15 #define NGX_HTTP_LC_HEADER_LEN 32 |
17 | 16 |
18 | 17 |
36 #define NGX_HTTP_OPTIONS 0x0200 | 35 #define NGX_HTTP_OPTIONS 0x0200 |
37 #define NGX_HTTP_PROPFIND 0x0400 | 36 #define NGX_HTTP_PROPFIND 0x0400 |
38 #define NGX_HTTP_PROPPATCH 0x0800 | 37 #define NGX_HTTP_PROPPATCH 0x0800 |
39 #define NGX_HTTP_LOCK 0x1000 | 38 #define NGX_HTTP_LOCK 0x1000 |
40 #define NGX_HTTP_UNLOCK 0x2000 | 39 #define NGX_HTTP_UNLOCK 0x2000 |
41 #define NGX_HTTP_TRACE 0x4000 | 40 #define NGX_HTTP_PATCH 0x4000 |
41 #define NGX_HTTP_TRACE 0x8000 | |
42 | 42 |
43 #define NGX_HTTP_CONNECTION_CLOSE 1 | 43 #define NGX_HTTP_CONNECTION_CLOSE 1 |
44 #define NGX_HTTP_CONNECTION_KEEP_ALIVE 2 | 44 #define NGX_HTTP_CONNECTION_KEEP_ALIVE 2 |
45 | 45 |
46 | 46 |
55 #define NGX_HTTP_PARSE_INVALID_09_METHOD 12 | 55 #define NGX_HTTP_PARSE_INVALID_09_METHOD 12 |
56 | 56 |
57 #define NGX_HTTP_PARSE_INVALID_HEADER 13 | 57 #define NGX_HTTP_PARSE_INVALID_HEADER 13 |
58 | 58 |
59 | 59 |
60 #define NGX_HTTP_ZERO_IN_URI 1 | 60 /* unused 1 */ |
61 #define NGX_HTTP_SUBREQUEST_IN_MEMORY 2 | 61 #define NGX_HTTP_SUBREQUEST_IN_MEMORY 2 |
62 #define NGX_HTTP_SUBREQUEST_WAITED 4 | 62 #define NGX_HTTP_SUBREQUEST_WAITED 4 |
63 #define NGX_HTTP_LOG_UNSAFE 8 | |
63 | 64 |
64 | 65 |
65 #define NGX_HTTP_OK 200 | 66 #define NGX_HTTP_OK 200 |
66 #define NGX_HTTP_CREATED 201 | 67 #define NGX_HTTP_CREATED 201 |
68 #define NGX_HTTP_ACCEPTED 202 | |
67 #define NGX_HTTP_NO_CONTENT 204 | 69 #define NGX_HTTP_NO_CONTENT 204 |
68 #define NGX_HTTP_PARTIAL_CONTENT 206 | 70 #define NGX_HTTP_PARTIAL_CONTENT 206 |
69 | 71 |
70 #define NGX_HTTP_SPECIAL_RESPONSE 300 | 72 #define NGX_HTTP_SPECIAL_RESPONSE 300 |
71 #define NGX_HTTP_MOVED_PERMANENTLY 301 | 73 #define NGX_HTTP_MOVED_PERMANENTLY 301 |
72 #define NGX_HTTP_MOVED_TEMPORARILY 302 | 74 #define NGX_HTTP_MOVED_TEMPORARILY 302 |
75 #define NGX_HTTP_SEE_OTHER 303 | |
73 #define NGX_HTTP_NOT_MODIFIED 304 | 76 #define NGX_HTTP_NOT_MODIFIED 304 |
74 | 77 |
75 #define NGX_HTTP_BAD_REQUEST 400 | 78 #define NGX_HTTP_BAD_REQUEST 400 |
76 #define NGX_HTTP_UNAUTHORIZED 401 | 79 #define NGX_HTTP_UNAUTHORIZED 401 |
77 #define NGX_HTTP_FORBIDDEN 403 | 80 #define NGX_HTTP_FORBIDDEN 403 |
90 /* Our own HTTP codes */ | 93 /* Our own HTTP codes */ |
91 | 94 |
92 /* The special code to close connection without any response */ | 95 /* The special code to close connection without any response */ |
93 #define NGX_HTTP_CLOSE 444 | 96 #define NGX_HTTP_CLOSE 444 |
94 | 97 |
95 #define NGX_HTTP_OWN_CODES 495 | 98 #define NGX_HTTP_NGINX_CODES 494 |
99 | |
100 #define NGX_HTTP_REQUEST_HEADER_TOO_LARGE 494 | |
96 | 101 |
97 #define NGX_HTTPS_CERT_ERROR 495 | 102 #define NGX_HTTPS_CERT_ERROR 495 |
98 #define NGX_HTTPS_NO_CERT 496 | 103 #define NGX_HTTPS_NO_CERT 496 |
99 | 104 |
100 /* | 105 /* |
162 ngx_list_t headers; | 167 ngx_list_t headers; |
163 | 168 |
164 ngx_table_elt_t *host; | 169 ngx_table_elt_t *host; |
165 ngx_table_elt_t *connection; | 170 ngx_table_elt_t *connection; |
166 ngx_table_elt_t *if_modified_since; | 171 ngx_table_elt_t *if_modified_since; |
172 ngx_table_elt_t *if_unmodified_since; | |
167 ngx_table_elt_t *user_agent; | 173 ngx_table_elt_t *user_agent; |
168 ngx_table_elt_t *referer; | 174 ngx_table_elt_t *referer; |
169 ngx_table_elt_t *content_length; | 175 ngx_table_elt_t *content_length; |
170 ngx_table_elt_t *content_type; | 176 ngx_table_elt_t *content_type; |
171 | 177 |
217 unsigned msie:1; | 223 unsigned msie:1; |
218 unsigned msie4:1; | 224 unsigned msie4:1; |
219 unsigned msie6:1; | 225 unsigned msie6:1; |
220 unsigned opera:1; | 226 unsigned opera:1; |
221 unsigned gecko:1; | 227 unsigned gecko:1; |
228 unsigned chrome:1; | |
229 unsigned safari:1; | |
222 unsigned konqueror:1; | 230 unsigned konqueror:1; |
223 } ngx_http_headers_in_t; | 231 } ngx_http_headers_in_t; |
224 | 232 |
225 | 233 |
226 typedef struct { | 234 typedef struct { |
431 unsigned quoted_uri:1; | 439 unsigned quoted_uri:1; |
432 | 440 |
433 /* URI with "+" */ | 441 /* URI with "+" */ |
434 unsigned plus_in_uri:1; | 442 unsigned plus_in_uri:1; |
435 | 443 |
436 /* URI with "\0" or "%00" */ | 444 /* URI with " " */ |
437 unsigned zero_in_uri:1; | 445 unsigned space_in_uri:1; |
438 | 446 |
439 unsigned invalid_header:1; | 447 unsigned invalid_header:1; |
440 | 448 |
449 unsigned add_uri_to_alias:1; | |
441 unsigned valid_location:1; | 450 unsigned valid_location:1; |
442 unsigned valid_unparsed_uri:1; | 451 unsigned valid_unparsed_uri:1; |
443 unsigned uri_changed:1; | 452 unsigned uri_changed:1; |
444 unsigned uri_changes:4; | 453 unsigned uri_changes:4; |
445 | 454 |
454 unsigned waited:1; | 463 unsigned waited:1; |
455 | 464 |
456 #if (NGX_HTTP_CACHE) | 465 #if (NGX_HTTP_CACHE) |
457 unsigned cached:1; | 466 unsigned cached:1; |
458 #endif | 467 #endif |
459 unsigned gzip:2; | 468 |
469 #if (NGX_HTTP_GZIP) | |
470 unsigned gzip_tested:1; | |
471 unsigned gzip_ok:1; | |
472 unsigned gzip_vary:1; | |
473 #endif | |
460 | 474 |
461 unsigned proxy:1; | 475 unsigned proxy:1; |
462 unsigned bypass_cache:1; | 476 unsigned bypass_cache:1; |
463 unsigned no_cache:1; | 477 unsigned no_cache:1; |
464 | 478 |
476 | 490 |
477 unsigned pipeline:1; | 491 unsigned pipeline:1; |
478 unsigned plain_http:1; | 492 unsigned plain_http:1; |
479 unsigned chunked:1; | 493 unsigned chunked:1; |
480 unsigned header_only:1; | 494 unsigned header_only:1; |
481 unsigned zero_body:1; | |
482 unsigned keepalive:1; | 495 unsigned keepalive:1; |
483 unsigned lingering_close:1; | 496 unsigned lingering_close:1; |
484 unsigned discard_body:1; | 497 unsigned discard_body:1; |
485 unsigned internal:1; | 498 unsigned internal:1; |
486 unsigned error_page:1; | 499 unsigned error_page:1; |