comparison src/core/ngx_cycle.c @ 276:c5c2b2883984 NGINX_0_5_8

nginx 0.5.8 *) Bugfix: a segmentation fault might occur if "client_body_in_file_only on" was used and a request body was small. *) Bugfix: a segmentation fault occurred if "client_body_in_file_only on" and "proxy_pass_request_body off" or "fastcgi_pass_request_body off" directives were used, and nginx switched to a next upstream. *) Bugfix: if the "proxy_buffering off" directive was used and a client connection was non-active, then the connection was closed after send timeout; bug appeared in 0.4.7. *) Bugfix: if the "epoll" method was used and a client closed a connection prematurely, then nginx closed the connection after a send timeout only. *) Bugfix: the "[alert] zero size buf" error when FastCGI server was used. *) Bugfixes in the "limit_zone" directive.
author Igor Sysoev <http://sysoev.ru>
date Fri, 19 Jan 2007 00:00:00 +0300
parents 052a7b1d40e5
children 3dbecd747fbb
comparison
equal deleted inserted replaced
275:1779577cb845 276:c5c2b2883984
310 if (file[i].name.data == NULL) { 310 if (file[i].name.data == NULL) {
311 continue; 311 continue;
312 } 312 }
313 313
314 file[i].fd = ngx_open_file(file[i].name.data, NGX_FILE_RDWR, 314 file[i].fd = ngx_open_file(file[i].name.data, NGX_FILE_RDWR,
315 NGX_FILE_CREATE_OR_OPEN|NGX_FILE_APPEND); 315 NGX_FILE_CREATE_OR_OPEN|NGX_FILE_APPEND,
316 NGX_FILE_DEFAULT_ACCESS);
316 317
317 ngx_log_debug3(NGX_LOG_DEBUG_CORE, log, 0, 318 ngx_log_debug3(NGX_LOG_DEBUG_CORE, log, 0,
318 "log: %p %d \"%s\"", 319 "log: %p %d \"%s\"",
319 &file[i], file[i].fd, file[i].name.data); 320 &file[i], file[i].fd, file[i].name.data);
320 321
847 file.log = log; 848 file.log = log;
848 849
849 trunc = ngx_test_config ? 0 : NGX_FILE_TRUNCATE; 850 trunc = ngx_test_config ? 0 : NGX_FILE_TRUNCATE;
850 851
851 file.fd = ngx_open_file(file.name.data, NGX_FILE_RDWR, 852 file.fd = ngx_open_file(file.name.data, NGX_FILE_RDWR,
852 NGX_FILE_CREATE_OR_OPEN|trunc); 853 NGX_FILE_CREATE_OR_OPEN|trunc,
854 NGX_FILE_DEFAULT_ACCESS);
853 855
854 if (file.fd == NGX_INVALID_FILE) { 856 if (file.fd == NGX_INVALID_FILE) {
855 ngx_log_error(NGX_LOG_EMERG, log, ngx_errno, 857 ngx_log_error(NGX_LOG_EMERG, log, ngx_errno,
856 ngx_open_file_n " \"%s\" failed", file.name.data); 858 ngx_open_file_n " \"%s\" failed", file.name.data);
857 return NGX_ERROR; 859 return NGX_ERROR;
957 file[i].pos - file[i].buffer); 959 file[i].pos - file[i].buffer);
958 file[i].pos = file[i].buffer; 960 file[i].pos = file[i].buffer;
959 } 961 }
960 962
961 fd = ngx_open_file(file[i].name.data, NGX_FILE_RDWR, 963 fd = ngx_open_file(file[i].name.data, NGX_FILE_RDWR,
962 NGX_FILE_CREATE_OR_OPEN|NGX_FILE_APPEND); 964 NGX_FILE_CREATE_OR_OPEN|NGX_FILE_APPEND,
965 NGX_FILE_DEFAULT_ACCESS);
963 966
964 ngx_log_debug3(NGX_LOG_DEBUG_EVENT, cycle->log, 0, 967 ngx_log_debug3(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
965 "reopen file \"%s\", old:%d new:%d", 968 "reopen file \"%s\", old:%d new:%d",
966 file[i].name.data, file[i].fd, fd); 969 file[i].name.data, file[i].fd, fd);
967 970