comparison src/os/unix/ngx_channel.c @ 10:46833bd150cb NGINX_0_1_5

nginx 0.1.5 *) Bugfix: on Solaris and Linux there may be too many "recvmsg() returned not enough data" alerts. *) Bugfix: there were the "writev() failed (22: Invalid argument)" errors on Solaris in proxy mode without sendfile. On other platforms that do not support sendfile at all the process got caught in an endless loop. *) Bugfix: segmentation fault on Solaris in proxy mode and using sendfile. *) Bugfix: segmentation fault on Solaris. *) Bugfix: on-line upgrade did not work on Linux. *) Bugfix: the ngx_http_autoindex_module module did not escape the spaces, the quotes, and the percent signs in the directory listing. *) Change: the decrease of the copy operations. *) Feature: the userid_p3p directive.
author Igor Sysoev <http://sysoev.ru>
date Thu, 11 Nov 2004 00:00:00 +0300
parents f0b350454894
children 8a529698ed55
comparison
equal deleted inserted replaced
9:77eee314ddbd 10:46833bd150cb
118 118
119 ngx_log_error(NGX_LOG_ALERT, log, err, "recvmsg() failed"); 119 ngx_log_error(NGX_LOG_ALERT, log, err, "recvmsg() failed");
120 return NGX_ERROR; 120 return NGX_ERROR;
121 } 121 }
122 122
123 if (n == 0) {
124 ngx_log_debug0(NGX_LOG_DEBUG_CORE, log, 0, "recvmsg() returned zero");
125 return NGX_ERROR;
126 }
127
123 if ((size_t) n < sizeof(ngx_channel_t)) { 128 if ((size_t) n < sizeof(ngx_channel_t)) {
124 ngx_log_error(NGX_LOG_ALERT, log, 0, 129 ngx_log_error(NGX_LOG_ALERT, log, 0,
125 "recvmsg() returned not enough data"); 130 "recvmsg() returned not enough data: %uz", n);
126 return NGX_ERROR; 131 return NGX_ERROR;
127 } 132 }
128 133
129 #if (HAVE_MSGHDR_MSG_CONTROL) 134 #if (HAVE_MSGHDR_MSG_CONTROL)
130 135