Mercurial > hg > nginx-vendor-current
comparison src/http/modules/ngx_http_fastcgi_module.c @ 364:a39aab45a53f NGINX_0_6_26
nginx 0.6.26
*) Bugfix: the "proxy_store" and "fastcgi_store" directives did not
check a response length.
*) Bugfix: a segmentation fault occurred in worker process, if big
value was used in a "expires" directive.
Thanks to Joaquin Cuenca Abela.
*) Bugfix: nginx incorrectly detected cache line size on Pentium 4.
Thanks to Gena Makhomed.
*) Bugfix: in proxied or FastCGI subrequests a client original method
was used instead of the GET method.
*) Bugfix: socket leak in HTTPS mode if deferred accept was used.
Thanks to Ben Maurer.
*) Bugfix: nginx issued the bogus error message "SSL_shutdown() failed
(SSL: )"; bug appeared in 0.6.23.
*) Bugfix: in HTTPS mode requests might fail with the "bad write retry"
error; bug appeared in 0.6.23.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 11 Feb 2008 00:00:00 +0300 |
parents | b743d290eb3b |
children | 9a242235a80a |
comparison
equal
deleted
inserted
replaced
363:6999caedb665 | 364:a39aab45a53f |
---|---|
131 | 131 |
132 static char *ngx_http_fastcgi_upstream_max_fails_unsupported(ngx_conf_t *cf, | 132 static char *ngx_http_fastcgi_upstream_max_fails_unsupported(ngx_conf_t *cf, |
133 ngx_command_t *cmd, void *conf); | 133 ngx_command_t *cmd, void *conf); |
134 static char *ngx_http_fastcgi_upstream_fail_timeout_unsupported(ngx_conf_t *cf, | 134 static char *ngx_http_fastcgi_upstream_fail_timeout_unsupported(ngx_conf_t *cf, |
135 ngx_command_t *cmd, void *conf); | 135 ngx_command_t *cmd, void *conf); |
136 | |
137 | |
138 static ngx_http_fastcgi_request_start_t ngx_http_fastcgi_request_start = { | |
139 { 1, /* version */ | |
140 NGX_HTTP_FASTCGI_BEGIN_REQUEST, /* type */ | |
141 0, /* request_id_hi */ | |
142 1, /* request_id_lo */ | |
143 0, /* content_length_hi */ | |
144 sizeof(ngx_http_fastcgi_begin_request_t), /* content_length_lo */ | |
145 0, /* padding_length */ | |
146 0 }, /* reserved */ | |
147 | |
148 { 0, /* role_hi */ | |
149 NGX_HTTP_FASTCGI_RESPONDER, /* role_lo */ | |
150 0, /* NGX_HTTP_FASTCGI_KEEP_CONN */ /* flags */ | |
151 { 0, 0, 0, 0, 0 } }, /* reserved[5] */ | |
152 | |
153 { 1, /* version */ | |
154 NGX_HTTP_FASTCGI_PARAMS, /* type */ | |
155 0, /* request_id_hi */ | |
156 1 }, /* request_id_lo */ | |
157 | |
158 }; | |
159 | |
160 | |
161 static ngx_str_t ngx_http_fastcgi_script_name = | |
162 ngx_string("fastcgi_script_name"); | |
163 | 136 |
164 | 137 |
165 static ngx_conf_post_t ngx_http_fastcgi_lowat_post = | 138 static ngx_conf_post_t ngx_http_fastcgi_lowat_post = |
166 { ngx_http_fastcgi_lowat_check }; | 139 { ngx_http_fastcgi_lowat_check }; |
167 | 140 |
410 NULL, /* exit master */ | 383 NULL, /* exit master */ |
411 NGX_MODULE_V1_PADDING | 384 NGX_MODULE_V1_PADDING |
412 }; | 385 }; |
413 | 386 |
414 | 387 |
388 static ngx_http_fastcgi_request_start_t ngx_http_fastcgi_request_start = { | |
389 { 1, /* version */ | |
390 NGX_HTTP_FASTCGI_BEGIN_REQUEST, /* type */ | |
391 0, /* request_id_hi */ | |
392 1, /* request_id_lo */ | |
393 0, /* content_length_hi */ | |
394 sizeof(ngx_http_fastcgi_begin_request_t), /* content_length_lo */ | |
395 0, /* padding_length */ | |
396 0 }, /* reserved */ | |
397 | |
398 { 0, /* role_hi */ | |
399 NGX_HTTP_FASTCGI_RESPONDER, /* role_lo */ | |
400 0, /* NGX_HTTP_FASTCGI_KEEP_CONN */ /* flags */ | |
401 { 0, 0, 0, 0, 0 } }, /* reserved[5] */ | |
402 | |
403 { 1, /* version */ | |
404 NGX_HTTP_FASTCGI_PARAMS, /* type */ | |
405 0, /* request_id_hi */ | |
406 1 }, /* request_id_lo */ | |
407 | |
408 }; | |
409 | |
410 | |
411 static ngx_str_t ngx_http_fastcgi_script_name = | |
412 ngx_string("fastcgi_script_name"); | |
413 | |
414 | |
415 static ngx_str_t ngx_http_fastcgi_hide_headers[] = { | 415 static ngx_str_t ngx_http_fastcgi_hide_headers[] = { |
416 ngx_string("Status"), | 416 ngx_string("Status"), |
417 ngx_string("X-Accel-Expires"), | 417 ngx_string("X-Accel-Expires"), |
418 ngx_string("X-Accel-Redirect"), | 418 ngx_string("X-Accel-Redirect"), |
419 ngx_string("X-Accel-Limit-Rate"), | 419 ngx_string("X-Accel-Limit-Rate"), |
420 ngx_string("X-Accel-Buffer"), | 420 ngx_string("X-Accel-Buffering"), |
421 ngx_string("X-Accel-Charset"), | |
421 ngx_null_string | 422 ngx_null_string |
422 }; | 423 }; |
423 | 424 |
424 | 425 |
425 static ngx_int_t | 426 static ngx_int_t |