comparison src/core/ngx_connection.c @ 484:ed5e10fb40fc NGINX_0_7_54

nginx 0.7.54 *) Feature: the ngx_http_image_filter_module. *) Feature: the "proxy_ignore_headers" and "fastcgi_ignore_headers" directives. *) Bugfix: a segmentation fault might occur in worker process, if an "open_file_cache_errors off" directive was used; the bug had appeared in 0.7.53. *) Bugfix: the "port_in_redirect off" directive did not work; the bug had appeared in 0.7.39. *) Bugfix: improve handling of "select" method errors. *) Bugfix: of "select() failed (10022: ...)" error in nginx/Windows. *) Bugfix: in error text descriptions in nginx/Windows; the bug had appeared in 0.7.53.
author Igor Sysoev <http://sysoev.ru>
date Fri, 01 May 2009 00:00:00 +0400
parents 549994537f15
children 6484cbba0222
comparison
equal deleted inserted replaced
483:0a2f4b42ddad 484:ed5e10fb40fc
246 246
247 if (ls[i].fd != -1) { 247 if (ls[i].fd != -1) {
248 continue; 248 continue;
249 } 249 }
250 250
251 ls[i].log = *ls[i].logp;
252
251 if (ls[i].inherited) { 253 if (ls[i].inherited) {
252 254
253 /* TODO: close on exit */ 255 /* TODO: close on exit */
254 /* TODO: nonblocking */ 256 /* TODO: nonblocking */
255 /* TODO: deferred accept */ 257 /* TODO: deferred accept */
799 ngx_int_t 801 ngx_int_t
800 ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text) 802 ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text)
801 { 803 {
802 ngx_uint_t level; 804 ngx_uint_t level;
803 805
804 if (err == NGX_ECONNRESET && c->log_error == NGX_ERROR_IGNORE_ECONNRESET) { 806 /* Winsock may return NGX_ECONNABORTED instead of NGX_ECONNRESET */
807
808 if ((err == NGX_ECONNRESET
809 #if (NGX_WIN32)
810 || err == NGX_ECONNABORTED
811 #endif
812 ) && c->log_error == NGX_ERROR_IGNORE_ECONNRESET)
813 {
805 return 0; 814 return 0;
806 } 815 }
807 816
808 #if (NGX_SOLARIS) 817 #if (NGX_SOLARIS)
809 if (err == NGX_EINVAL && c->log_error == NGX_ERROR_IGNORE_EINVAL) { 818 if (err == NGX_EINVAL && c->log_error == NGX_ERROR_IGNORE_EINVAL) {
811 } 820 }
812 #endif 821 #endif
813 822
814 if (err == 0 823 if (err == 0
815 || err == NGX_ECONNRESET 824 || err == NGX_ECONNRESET
816 #if !(NGX_WIN32) 825 #if (NGX_WIN32)
826 || err == NGX_ECONNABORTED
827 #else
817 || err == NGX_EPIPE 828 || err == NGX_EPIPE
818 #endif 829 #endif
819 || err == NGX_ENOTCONN 830 || err == NGX_ENOTCONN
820 || err == NGX_ETIMEDOUT 831 || err == NGX_ETIMEDOUT
821 || err == NGX_ECONNREFUSED 832 || err == NGX_ECONNREFUSED