Mercurial > hg > nginx-quic
comparison src/os/unix/ngx_recv.c @ 184:1bf718ce0dde
nginx-0.0.1-2003-11-14-10:20:34 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 14 Nov 2003 07:20:34 +0000 |
parents | fb61ba77beba |
children | 0061d1f0908d |
comparison
equal
deleted
inserted
replaced
183:4c698194c56d | 184:1bf718ce0dde |
---|---|
38 } | 38 } |
39 } | 39 } |
40 } | 40 } |
41 | 41 |
42 do { | 42 do { |
43 rev->ready = 1; | |
44 | |
43 n = recv(c->fd, buf, size, 0); | 45 n = recv(c->fd, buf, size, 0); |
44 | 46 |
45 ngx_log_debug(c->log, "recv: %d:%d" _ n _ size); | 47 ngx_log_debug(c->log, "recv: %d:%d" _ n _ size); |
46 | 48 |
47 if (n >= 0) { | 49 if (n >= 0) { |
76 | 78 |
77 return n; | 79 return n; |
78 } | 80 } |
79 | 81 |
80 rev->ready = 0; | 82 rev->ready = 0; |
81 rev->error = 1; | |
82 n = ngx_unix_recv_error(rev, ngx_socket_errno); | 83 n = ngx_unix_recv_error(rev, ngx_socket_errno); |
83 | 84 |
84 } while (n == NGX_EINTR); | 85 } while (n == NGX_EINTR); |
86 | |
87 if (n == NGX_ERROR){ | |
88 rev->error = 1; | |
89 } | |
85 | 90 |
86 return n; | 91 return n; |
87 } | 92 } |
88 | 93 |
89 #else /* ! NAVE_KQUEUE */ | 94 #else /* ! NAVE_KQUEUE */ |
94 ngx_event_t *rev; | 99 ngx_event_t *rev; |
95 | 100 |
96 rev = c->read; | 101 rev = c->read; |
97 | 102 |
98 do { | 103 do { |
104 rev->ready = 1; | |
105 | |
99 n = recv(c->fd, buf, size, 0); | 106 n = recv(c->fd, buf, size, 0); |
100 | 107 |
101 ngx_log_debug(c->log, "recv: %d:%d" _ n _ size); | 108 ngx_log_debug(c->log, "recv: %d:%d" _ n _ size); |
102 | 109 |
103 if (n >= 0) { | 110 if (n >= 0) { |
111 | 118 |
112 return n; | 119 return n; |
113 } | 120 } |
114 | 121 |
115 rev->ready = 0; | 122 rev->ready = 0; |
116 rev->error = 1; | |
117 n = ngx_unix_recv_error(rev, ngx_socket_errno); | 123 n = ngx_unix_recv_error(rev, ngx_socket_errno); |
118 | 124 |
119 } while (n == NGX_EINTR); | 125 } while (n == NGX_EINTR); |
126 | |
127 if (n == NGX_ERROR){ | |
128 rev->error = 1; | |
129 } | |
120 | 130 |
121 return n; | 131 return n; |
122 } | 132 } |
123 | 133 |
124 #endif /* NAVE_KQUEUE */ | 134 #endif /* NAVE_KQUEUE */ |