comparison src/http/ngx_http.h @ 48:6cfc63e68377 NGINX_0_1_24

nginx 0.1.24 *) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING and DOCUMENT_URI variables. *) Bugfix: the ngx_http_autoindex_module may some times return the 404 response for existent directory, if this directory was used in "alias" directive. *) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large responses. *) Bugfix: the lack of the "Referer" header line was always accounted as valid referrer.
author Igor Sysoev <http://sysoev.ru>
date Fri, 04 Mar 2005 00:00:00 +0300
parents da8c190bdaba
children 72eb30262aac
comparison
equal deleted inserted replaced
47:4ae32548452c 48:6cfc63e68377
27 #include <ngx_http_request.h> 27 #include <ngx_http_request.h>
28 #include <ngx_http_config.h> 28 #include <ngx_http_config.h>
29 #include <ngx_http_busy_lock.h> 29 #include <ngx_http_busy_lock.h>
30 #include <ngx_http_log_handler.h> 30 #include <ngx_http_log_handler.h>
31 #include <ngx_http_core_module.h> 31 #include <ngx_http_core_module.h>
32 #include <ngx_http_variables.h>
32 33
33 #if (NGX_HTTP_SSL) 34 #if (NGX_HTTP_SSL)
34 #include <ngx_http_ssl_module.h> 35 #include <ngx_http_ssl_module.h>
35 #endif 36 #endif
36 37
39 ngx_str_t *client; 40 ngx_str_t *client;
40 ngx_http_request_t *request; 41 ngx_http_request_t *request;
41 }; 42 };
42 43
43 44
44 #define ngx_http_get_module_ctx(r, module) r->ctx[module.ctx_index] 45 #define ngx_http_get_module_ctx(r, module) (r)->ctx[module.ctx_index]
45 #define ngx_http_get_module_err_ctx(r, module) \ 46 #define ngx_http_get_module_err_ctx(r, module) \
46 (r->err_ctx ? r->err_ctx[module.ctx_index] : r->ctx[module.ctx_index]) 47 ((r)->err_ctx ? (r)->err_ctx[module.ctx_index] : (r)->ctx[module.ctx_index])
47 48
48 /* STUB */ 49 /* STUB */
49 #define ngx_http_create_ctx(r, cx, module, size, error) \ 50 #define ngx_http_create_ctx(r, cx, module, size, error) \
50 do { \ 51 do { \
51 ngx_test_null(cx, ngx_pcalloc(r->pool, size), error); \ 52 ngx_test_null(cx, ngx_pcalloc(r->pool, size), error); \
52 r->ctx[module.ctx_index] = cx; \ 53 r->ctx[module.ctx_index] = cx; \
53 } while (0) 54 } while (0)
54 /**/ 55 /**/
55 56
56 #define ngx_http_set_ctx(r, c, module) \ 57 #define ngx_http_set_ctx(r, c, module) r->ctx[module.ctx_index] = c;
57 r->ctx[module.ctx_index] = c;
58 58
59 #define ngx_http_delete_ctx(r, module) \ 59 #define ngx_http_delete_ctx(r, module) r->ctx[module.ctx_index] = NULL;
60 r->ctx[module.ctx_index] = NULL;
61 60
62 61
63 void ngx_http_init_connection(ngx_connection_t *c); 62 void ngx_http_init_connection(ngx_connection_t *c);
64 63
65 ngx_int_t ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b); 64 ngx_int_t ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b);
77 void ngx_http_close_request(ngx_http_request_t *r, int error); 76 void ngx_http_close_request(ngx_http_request_t *r, int error);
78 void ngx_http_close_connection(ngx_connection_t *c); 77 void ngx_http_close_connection(ngx_connection_t *c);
79 78
80 79
81 ngx_int_t ngx_http_read_client_request_body(ngx_http_request_t *r, 80 ngx_int_t ngx_http_read_client_request_body(ngx_http_request_t *r,
82 ngx_http_client_body_handler_pt post_handler); 81 ngx_http_client_body_handler_pt post_handler);
83 82
84 ngx_int_t ngx_http_send_header(ngx_http_request_t *r); 83 ngx_int_t ngx_http_send_header(ngx_http_request_t *r);
85 ngx_int_t ngx_http_special_response_handler(ngx_http_request_t *r, int error); 84 ngx_int_t ngx_http_special_response_handler(ngx_http_request_t *r,
85 ngx_int_t error);
86 86
87 87
88 time_t ngx_http_parse_time(u_char *value, size_t len); 88 time_t ngx_http_parse_time(u_char *value, size_t len);
89 size_t ngx_http_get_time(char *buf, time_t t); 89 size_t ngx_http_get_time(char *buf, time_t t);
90 90