Mercurial > hg > nginx
diff src/event/ngx_event_acceptex.c @ 1633:74b2a52bc3c9
TransmitPackets(), ConnectEx(), and DisconnectEx()
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Sun, 11 Nov 2007 18:56:50 +0000 |
parents | 5e8fb59c18c1 |
children | 2a92804f4109 |
line wrap: on
line diff
--- a/src/event/ngx_event_acceptex.c +++ b/src/event/ngx_event_acceptex.c @@ -32,7 +32,8 @@ ngx_event_acceptex(ngx_event_t *rev) /* SO_UPDATE_ACCEPT_CONTEXT is required for shutdown() to work */ if (setsockopt(c->fd, SOL_SOCKET, SO_UPDATE_ACCEPT_CONTEXT, - (char *) &c->listening->fd, sizeof(ngx_socket_t)) == -1) + (char *) &c->listening->fd, sizeof(ngx_socket_t)) + == -1) { ngx_log_error(NGX_LOG_CRIT, c->log, ngx_socket_errno, "setsockopt(SO_UPDATE_ACCEPT_CONTEXT) failed for %V", @@ -41,17 +42,17 @@ ngx_event_acceptex(ngx_event_t *rev) c->accept_context_updated = 1; } - getacceptexsockaddrs(c->buffer->pos, c->listening->post_accept_buffer_size, - c->listening->socklen + 16, - c->listening->socklen + 16, - &c->local_sockaddr, &c->local_socklen, - &c->sockaddr, &c->socklen); + ngx_getacceptexsockaddrs(c->buffer->pos, + c->listening->post_accept_buffer_size, + c->listening->socklen + 16, + c->listening->socklen + 16, + &c->local_sockaddr, &c->local_socklen, + &c->sockaddr, &c->socklen); if (c->listening->post_accept_buffer_size) { c->buffer->last += rev->available; c->buffer->end = c->buffer->start - + c->listening->post_accept_buffer_size; - + + c->listening->post_accept_buffer_size; } else { c->buffer = NULL; } @@ -178,11 +179,11 @@ ngx_event_post_acceptex(ngx_listening_t return NGX_ERROR; } - if (acceptex(ls->fd, s, c->buffer->pos, ls->post_accept_buffer_size, - ls->socklen + 16, ls->socklen + 16, - &rcvd, (LPOVERLAPPED) &rev->ovlp) == 0) + if (ngx_acceptex(ls->fd, s, c->buffer->pos, ls->post_accept_buffer_size, + ls->socklen + 16, ls->socklen + 16, + &rcvd, (LPOVERLAPPED) &rev->ovlp) + == 0) { - err = ngx_socket_errno; if (err != WSA_IO_PENDING) { ngx_log_error(NGX_LOG_ALERT, &ls->log, err,