Mercurial > hg > nginx
comparison src/os/unix/ngx_recv_chain.c @ 83:a7e45c45a95c
nginx-0.0.1-2003-04-28-19:06:39 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 28 Apr 2003 15:06:39 +0000 |
parents | 869b10be682f |
children | 29bf798b583f |
comparison
equal
deleted
inserted
replaced
82:fccdb921e8b8 | 83:a7e45c45a95c |
---|---|
4 #include <ngx_errno.h> | 4 #include <ngx_errno.h> |
5 #include <ngx_log.h> | 5 #include <ngx_log.h> |
6 #include <ngx_connection.h> | 6 #include <ngx_connection.h> |
7 | 7 |
8 | 8 |
9 ssize_t ngx_recv_chain(ngx_connection_t *c, ngx_chain_t *ce) | 9 ssize_t ngx_recv_chain(ngx_connection_t *c, ngx_chain_t *entry) |
10 { | 10 { |
11 ssize_t n; | 11 ssize_t n; |
12 struct iovec *iov; | 12 struct iovec *iov; |
13 ngx_err_t err; | 13 ngx_err_t err; |
14 ngx_array_t io; | 14 ngx_array_t io; |
15 | 15 |
16 ngx_init_array(io, c->pool, 10, sizeof(struct iovec), NGX_ERROR); | 16 ngx_init_array(io, c->pool, 10, sizeof(struct iovec), NGX_ERROR); |
17 | 17 |
18 while (ce) { | 18 while (entry) { |
19 ngx_test_null(iov, ngx_push_array(&io), NGX_ERROR); | 19 ngx_test_null(iov, ngx_push_array(&io), NGX_ERROR); |
20 iov->iov_base = ce->hunk->pos; | 20 iov->iov_base = entry->hunk->pos; |
21 iov->iov_len = ce->hunk->end - ce->hunk->last; | 21 iov->iov_len = entry->hunk->end - entry->hunk->last; |
22 ce = ce->next; | 22 entry = entry->next; |
23 } | 23 } |
24 | 24 |
25 ngx_log_debug(c->log, "recv: %d:%d" _ io.nelts _ iov->iov_len); | 25 ngx_log_debug(c->log, "recv: %d:%d" _ io.nelts _ iov->iov_len); |
26 | 26 |
27 n = readv(c->fd, (struct iovec *) io.elts, io.nelts); | 27 n = readv(c->fd, (struct iovec *) io.elts, io.nelts); |