diff options
author | Igor Sysoev <igor@sysoev.ru> | 2005-01-18 13:03:58 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2005-01-18 13:03:58 +0000 |
commit | 02025fd6bdfa997f521c3b26a08aeba366308e84 (patch) | |
tree | 44db6ebb4e310f97f4550b7d7d69932636764304 /src/os/unix/ngx_linux_sendfile_chain.c | |
parent | 543d02a4427e1833f8f9bdb60e3ff5e9fe2eb21b (diff) | |
download | nginx-02025fd6bdfa997f521c3b26a08aeba366308e84.tar.gz nginx-02025fd6bdfa997f521c3b26a08aeba366308e84.zip |
nginx-0.1.14-RELEASE importrelease-0.1.14
*) Feature: the autoconfiguration directives:
--http-client-body-temp-path=PATH, --http-proxy-temp-path=PATH, and
--http-fastcgi-temp-path=PATH
*) Change: the directory name for the temporary files with the client
request body is specified by directive client_body_temp_path, by
default it is <prefix>/client_body_temp.
*) Feature: the ngx_http_fastcgi_module and the directives:
fastcgi_pass, fastcgi_root, fastcgi_index, fastcgi_params,
fastcgi_connect_timeout, fastcgi_send_timeout, fastcgi_read_timeout,
fastcgi_send_lowat, fastcgi_header_buffer_size, fastcgi_buffers,
fastcgi_busy_buffers_size, fastcgi_temp_path,
fastcgi_max_temp_file_size, fastcgi_temp_file_write_size,
fastcgi_next_upstream, and fastcgi_x_powered_by.
*) Bugfix: the "[alert] zero size buf" error; the bug had appeared in
0.1.3.
*) Change: the URI must be specified after the host name in the
proxy_pass directive.
*) Change: the %3F symbol in the URI was considered as the argument
string start.
*) Feature: the unix domain sockets support in the
ngx_http_proxy_module.
*) Feature: the ssl_engine and ssl_ciphers directives.
Thanks to Sergey Skvortsov for SSL-accelerator.
Diffstat (limited to 'src/os/unix/ngx_linux_sendfile_chain.c')
-rw-r--r-- | src/os/unix/ngx_linux_sendfile_chain.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/os/unix/ngx_linux_sendfile_chain.c b/src/os/unix/ngx_linux_sendfile_chain.c index 99599e231..59bc59c76 100644 --- a/src/os/unix/ngx_linux_sendfile_chain.c +++ b/src/os/unix/ngx_linux_sendfile_chain.c @@ -11,9 +11,10 @@ /* * On Linux up to 2.4.21 sendfile() (syscall #187) works with 32-bit - * offsets only and the including <sys/sendfile.h> breaks the compiling - * if off_t is 64 bit wide. So we use own sendfile() definition where offset - * parameter is int32_t and use sendfile() for the file parts below 2G only. + * offsets only, and the including <sys/sendfile.h> breaks the compiling, + * if off_t is 64 bit wide. So we use own sendfile() definition, where offset + * parameter is int32_t, and use sendfile() for the file parts below 2G only, + * see src/os/unix/ngx_linux_config.h * * Linux 2.4.21 has a new sendfile64() syscall #239. */ @@ -85,6 +86,14 @@ ngx_chain_t *ngx_linux_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, continue; } +#if 1 + if (!ngx_buf_in_memory(cl->buf) && !cl->buf->in_file) { + ngx_log_error(NGX_LOG_ALERT, c->log, 0, + "zero size buf in sendfile"); + ngx_debug_point(); + } +#endif + if (!ngx_buf_in_memory_only(cl->buf)) { break; } @@ -118,7 +127,6 @@ ngx_chain_t *ngx_linux_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, && cl && cl->buf->in_file) { - /* the TCP_CORK and TCP_NODELAY are mutually exclusive */ if (c->tcp_nodelay) { @@ -131,7 +139,7 @@ ngx_chain_t *ngx_linux_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, err = ngx_errno; /* - * there is a tiny chance to be interrupted, however + * there is a tiny chance to be interrupted, however, * we continue a processing with the TCP_NODELAY * and without the TCP_CORK */ @@ -157,7 +165,7 @@ ngx_chain_t *ngx_linux_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, err = ngx_errno; /* - * there is a tiny chance to be interrupted, however + * there is a tiny chance to be interrupted, however, * we continue a processing without the TCP_CORK */ |