comparison src/core/ngx_connection.c @ 253:b6793bc5034b

nginx-0.0.2-2004-02-09-10:46:43 import
author Igor Sysoev <igor@sysoev.ru>
date Mon, 09 Feb 2004 07:46:43 +0000
parents 5d4f49dc8de5
children 8e39cab6abd5
comparison
equal deleted inserted replaced
252:84b1c672ec5a 253:b6793bc5034b
46 ls[i].addr_text.data = ngx_palloc(cycle->pool, ls[i].addr_text_max_len); 46 ls[i].addr_text.data = ngx_palloc(cycle->pool, ls[i].addr_text_max_len);
47 if (ls[i].addr_text.data == NULL) { 47 if (ls[i].addr_text.data == NULL) {
48 return NGX_ERROR; 48 return NGX_ERROR;
49 } 49 }
50 50
51 /* STUB: autoconf & set sin_len in ls[i].sockaddr in ngx_http.c */
52 #if __FreeBSD__
53 addr_in->sin_len = 0;
54 #endif
55
56 ls[i].family = addr_in->sin_family; 51 ls[i].family = addr_in->sin_family;
57 ls[i].addr_text.len = ngx_sock_ntop(ls[i].family, ls[i].sockaddr, 52 ls[i].addr_text.len = ngx_sock_ntop(ls[i].family, ls[i].sockaddr,
58 ls[i].addr_text.data, 53 ls[i].addr_text.data,
59 ls[i].addr_text_max_len); 54 ls[i].addr_text_max_len);
60 if (ls[i].addr_text.len == 0) { 55 if (ls[i].addr_text.len == 0) {
66 } 61 }
67 62
68 63
69 ngx_int_t ngx_open_listening_sockets(ngx_cycle_t *cycle) 64 ngx_int_t ngx_open_listening_sockets(ngx_cycle_t *cycle)
70 { 65 {
71 int tries, failed, reuseaddr, i; 66 ngx_int_t tries, failed, reuseaddr, i;
72 ngx_err_t err; 67 ngx_err_t err;
73 ngx_log_t *log; 68 ngx_log_t *log;
74 ngx_socket_t s; 69 ngx_socket_t s;
75 ngx_listening_t *ls; 70 ngx_listening_t *ls;
76 71
77 reuseaddr = 1; 72 reuseaddr = 1;
78 #if (NGX_SUPPRESS_WARN) 73 #if (NGX_SUPPRESS_WARN)
79 failed = 0; 74 failed = 0;
80 #endif 75 #endif
239 } 234 }
240 235
241 cycle->connections[fd].fd = -1; 236 cycle->connections[fd].fd = -1;
242 } 237 }
243 } 238 }
239
240
241 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text)
242 {
243 ngx_int_t level;
244
245 if (err == NGX_ECONNRESET
246 && c->read->log_error == NGX_ERROR_IGNORE_ECONNRESET)
247 {
248 return 0;
249 }
250
251 if (err == NGX_ECONNRESET || err == NGX_EPIPE || err == NGX_ENOTCONN) {
252
253 switch (c->read->log_error) {
254
255 case NGX_ERROR_INFO:
256 level = NGX_LOG_INFO;
257 break;
258
259 case NGX_ERROR_ERR:
260 level = NGX_LOG_ERR;
261 break;
262
263 default:
264 level = NGX_LOG_CRIT;
265 }
266
267 } else {
268 level = NGX_LOG_CRIT;
269 }
270
271 ngx_log_error(level, c->log, err, text);
272
273 return NGX_ERROR;
274 }