Deleted
Added
nxt_conn_read.c (62:5e1efcc7b740) | nxt_conn_read.c (629:b3e55c647741) |
---|---|
1 2/* 3 * Copyright (C) Igor Sysoev 4 * Copyright (C) NGINX, Inc. 5 */ 6 7#include <nxt_main.h> 8 --- 24 unchanged lines hidden (view full) --- 33 nxt_fd_event_enable_read(engine, &c->socket); 34} 35 36 37void 38nxt_conn_io_read(nxt_task_t *task, void *obj, void *data) 39{ 40 ssize_t n; | 1 2/* 3 * Copyright (C) Igor Sysoev 4 * Copyright (C) NGINX, Inc. 5 */ 6 7#include <nxt_main.h> 8 --- 24 unchanged lines hidden (view full) --- 33 nxt_fd_event_enable_read(engine, &c->socket); 34} 35 36 37void 38nxt_conn_io_read(nxt_task_t *task, void *obj, void *data) 39{ 40 ssize_t n; |
41 nxt_buf_t *b; | |
42 nxt_conn_t *c; 43 nxt_work_queue_t *wq; 44 nxt_event_engine_t *engine; 45 nxt_work_handler_t handler; 46 const nxt_conn_state_t *state; 47 48 c = obj; 49 50 nxt_debug(task, "conn read fd:%d rdy:%d cl:%d", 51 c->socket.fd, c->socket.read_ready, c->socket.closed); 52 53 engine = task->thread->engine; 54 55 state = c->read_state; 56 57 if (c->socket.read_ready) { 58 | 41 nxt_conn_t *c; 42 nxt_work_queue_t *wq; 43 nxt_event_engine_t *engine; 44 nxt_work_handler_t handler; 45 const nxt_conn_state_t *state; 46 47 c = obj; 48 49 nxt_debug(task, "conn read fd:%d rdy:%d cl:%d", 50 c->socket.fd, c->socket.read_ready, c->socket.closed); 51 52 engine = task->thread->engine; 53 54 state = c->read_state; 55 56 if (c->socket.read_ready) { 57 |
59 b = c->read; | 58 if (state->io_read_handler == NULL) { 59 n = c->io->recvbuf(c, c->read); |
60 | 60 |
61 if (c->peek == 0) { 62 n = c->io->recvbuf(c, b); 63 | |
64 } else { | 61 } else { |
65 n = c->io->recv(c, b->mem.free, c->peek, MSG_PEEK); | 62 n = state->io_read_handler(c); |
66 } 67 68 if (n > 0) { 69 c->nbytes = n; 70 | 63 } 64 65 if (n > 0) { 66 c->nbytes = n; 67 |
71 nxt_recvbuf_update(b, n); | 68 nxt_recvbuf_update(c->read, n); |
72 73 nxt_fd_event_block_read(engine, &c->socket); 74 75 if (state->timer_autoreset) { 76 nxt_timer_disable(engine, &c->read_timer); 77 } 78 79 wq = c->read_work_queue; --- 162 unchanged lines hidden --- | 69 70 nxt_fd_event_block_read(engine, &c->socket); 71 72 if (state->timer_autoreset) { 73 nxt_timer_disable(engine, &c->read_timer); 74 } 75 76 wq = c->read_work_queue; --- 162 unchanged lines hidden --- |