comparison src/http/ngx_http_request.h @ 539:5f4de8cf0d9d

Merge with current.
author Maxim Dounin <mdounin@mdounin.ru>
date Tue, 15 Sep 2009 03:43:40 +0400
parents 40fd8d7b82f9 80f7156c2965
children f3a9e57d2e17
comparison
equal deleted inserted replaced
522:40fd8d7b82f9 539:5f4de8cf0d9d
413 ngx_http_connection_t *http_connection; 413 ngx_http_connection_t *http_connection;
414 414
415 ngx_http_log_handler_pt log_handler; 415 ngx_http_log_handler_pt log_handler;
416 416
417 ngx_http_cleanup_t *cleanup; 417 ngx_http_cleanup_t *cleanup;
418
419 unsigned subrequests:8;
420 unsigned count:8;
421 unsigned blocked:8;
422
423 unsigned aio:1;
418 424
419 unsigned http_state:4; 425 unsigned http_state:4;
420 426
421 /* URI with "/." and on Win32 with "//" */ 427 /* URI with "/." and on Win32 with "//" */
422 unsigned complex_uri:1; 428 unsigned complex_uri:1;
500 #if (NGX_STAT_STUB) 506 #if (NGX_STAT_STUB)
501 unsigned stat_reading:1; 507 unsigned stat_reading:1;
502 unsigned stat_writing:1; 508 unsigned stat_writing:1;
503 #endif 509 #endif
504 510
505 unsigned subrequests:8;
506
507 /* used to parse HTTP headers */ 511 /* used to parse HTTP headers */
508 512
509 ngx_uint_t state; 513 ngx_uint_t state;
514
515 ngx_uint_t header_hash;
516 ngx_uint_t lowcase_index;
517 u_char lowcase_header[NGX_HTTP_LC_HEADER_LEN];
518
519 u_char *header_name_start;
520 u_char *header_name_end;
521 u_char *header_start;
522 u_char *header_end;
523
524 /*
525 * a memory that can be reused after parsing a request line
526 * via ngx_http_ephemeral_t
527 */
528
510 u_char *uri_start; 529 u_char *uri_start;
511 u_char *uri_end; 530 u_char *uri_end;
512 u_char *uri_ext; 531 u_char *uri_ext;
513 u_char *args_start; 532 u_char *args_start;
514 u_char *request_start; 533 u_char *request_start;
518 u_char *schema_end; 537 u_char *schema_end;
519 u_char *host_start; 538 u_char *host_start;
520 u_char *host_end; 539 u_char *host_end;
521 u_char *port_start; 540 u_char *port_start;
522 u_char *port_end; 541 u_char *port_end;
523 u_char *header_name_start;
524 u_char *header_name_end;
525 u_char *header_start;
526 u_char *header_end;
527 542
528 unsigned http_minor:16; 543 unsigned http_minor:16;
529 unsigned http_major:16; 544 unsigned http_major:16;
530
531 ngx_uint_t header_hash;
532 ngx_uint_t lowcase_index;
533 u_char lowcase_header[NGX_HTTP_LC_HEADER_LEN];
534 }; 545 };
546
547
548 typedef struct {
549 ngx_http_posted_request_t terminal_posted_request;
550 #if (NGX_HAVE_AIO_SENDFILE)
551 u_char aio_preload;
552 #endif
553 } ngx_http_ephemeral_t;
535 554
536 555
537 extern ngx_http_header_t ngx_http_headers_in[]; 556 extern ngx_http_header_t ngx_http_headers_in[];
538 extern ngx_http_header_out_t ngx_http_headers_out[]; 557 extern ngx_http_header_out_t ngx_http_headers_out[];
539 558