diff src/http/ngx_http_request.h @ 248:acd2ec3541cb NGINX_0_4_9

nginx 0.4.9 *) Feature: the "set" parameter in the "include" SSI command. *) Feature: the ngx_http_perl_module now tests the nginx.pm module version.
author Igor Sysoev <http://sysoev.ru>
date Fri, 13 Oct 2006 00:00:00 +0400
parents a528ae0fe909
children f3ec44f4a53b
line wrap: on
line diff
--- a/src/http/ngx_http_request.h
+++ b/src/http/ngx_http_request.h
@@ -47,7 +47,9 @@
 
 #define NGX_HTTP_PARSE_INVALID_HEADER      13
 
+
 #define NGX_HTTP_ZERO_IN_URI               1
+#define NGX_HTTP_SUBREQUEST_IN_MEMORY      2
 
 
 #define NGX_HTTP_OK                        200
@@ -287,6 +289,15 @@ struct ngx_http_cleanup_s {
 };
 
 
+typedef ngx_int_t (*ngx_http_post_subrequest_pt)(ngx_http_request_t *r,
+    void *data, ngx_int_t rc);
+
+typedef struct {
+    ngx_http_post_subrequest_pt       handler;
+    void                             *data;
+} ngx_http_post_subrequest_t;
+
+
 typedef struct ngx_http_postponed_request_s  ngx_http_postponed_request_t;
 
 struct ngx_http_postponed_request_s {
@@ -330,8 +341,6 @@ struct ngx_http_request_s {
 
     ngx_uint_t                        method;
     ngx_uint_t                        http_version;
-    ngx_uint_t                        http_major;
-    ngx_uint_t                        http_minor;
 
     ngx_str_t                         request_line;
     ngx_str_t                         uri;
@@ -346,6 +355,7 @@ struct ngx_http_request_s {
     ngx_http_request_t               *main;
     ngx_http_request_t               *parent;
     ngx_http_postponed_request_t     *postponed;
+    ngx_http_post_subrequest_t       *post_subrequest;
 
     uint32_t                          in_addr;
     ngx_uint_t                        port;
@@ -359,8 +369,6 @@ struct ngx_http_request_s {
 
     ngx_http_variable_value_t        *variables;
 
-    size_t                            root_length;
-
     size_t                            limit_rate;
 
     /* used to learn the Apache compatible response length without a header */
@@ -405,6 +413,7 @@ struct ngx_http_request_s {
     unsigned                          request_body_file_log_level:3;
 
     unsigned                          fast_subrequest:1;
+    unsigned                          subrequest_in_memory:1;
 
     unsigned                          header_timeout_set:1;
 
@@ -456,6 +465,7 @@ struct ngx_http_request_s {
     unsigned                          subrequests:8;
 
     /* used to parse HTTP headers */
+
     ngx_uint_t                        state;
     u_char                           *uri_start;
     u_char                           *uri_end;
@@ -475,6 +485,9 @@ struct ngx_http_request_s {
     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];