Mercurial > hg > nginx-quic
comparison src/event/ngx_event_close.c @ 7:b5481d6fbbd4
nginx-0.0.1-2002-08-29-20:59:54 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 29 Aug 2002 16:59:54 +0000 |
parents | 669801705ab1 |
children | 53cb81681040 |
comparison
equal
deleted
inserted
replaced
6:669801705ab1 | 7:b5481d6fbbd4 |
---|---|
1 | 1 |
2 #include <ngx_config.h> | 2 #include <ngx_config.h> |
3 #include <ngx_core.h> | |
3 #include <ngx_types.h> | 4 #include <ngx_types.h> |
4 #include <ngx_connection.h> | 5 #include <ngx_connection.h> |
5 #include <ngx_event_close.h> | 6 #include <ngx_event_close.h> |
6 | 7 |
7 | 8 |
8 int ngx_event_close_connection(ngx_event_t *ev) | 9 int ngx_event_close_connection(ngx_event_t *ev) |
9 { | 10 { |
10 int rc; | 11 int rc; |
11 ngx_connection_t *cn = (ngx_connection_t *) ev->data; | 12 ngx_connection_t *c = (ngx_connection_t *) ev->data; |
12 | 13 |
13 ngx_assert((cn->fd != -1), return -1, ev->log, | 14 ngx_assert((c->fd != -1), return NGX_ERROR, c->log, |
14 "ngx_event_close: already closed"); | 15 "ngx_event_close: already closed"); |
15 | 16 |
16 if ((rc = ngx_close_socket(cn->fd)) == -1) | 17 ngx_destroy_pool(c->pool); |
17 ngx_log_error(NGX_LOG_ERR, ev->log, ngx_socket_errno, | 18 |
19 if ((rc = ngx_close_socket(c->fd)) == -1) | |
20 ngx_log_error(NGX_LOG_ERR, c->log, ngx_socket_errno, | |
18 "ngx_event_close: close failed"); | 21 "ngx_event_close: close failed"); |
19 | 22 |
20 if (cn->read->next) | 23 if (c->read->next) |
21 ngx_del_event(cn->read, NGX_READ_EVENT); | 24 ngx_del_event(c->read, NGX_READ_EVENT); |
22 | 25 |
23 if (cn->write->next) | 26 if (c->write->next) |
24 ngx_del_event(cn->write, NGX_WRITE_EVENT); | 27 ngx_del_event(c->write, NGX_WRITE_EVENT); |
25 | 28 |
26 cn->fd = -1; | 29 c->fd = -1; |
27 | 30 |
28 return rc; | 31 return rc; |
29 } | 32 } |