conn->flags |= CO_FL_WAIT_ROOM;
break;
}
-
- fd_cant_recv(conn->handle.fd);
break;
}
else if (errno == ENOSYS || errno == EINVAL || errno == EBADF) {
* being asked to poll.
*/
conn->flags |= CO_FL_WAIT_ROOM;
- fd_done_recv(conn->handle.fd);
break;
}
} /* while */
if (ret <= 0) {
if (ret == 0 || errno == EAGAIN) {
- fd_cant_send(conn->handle.fd);
break;
}
else if (errno == EINTR)
}
if (unlikely(conn->flags & CO_FL_WAIT_L4_CONN) && done) {
conn->flags &= ~CO_FL_WAIT_L4_CONN;
- fd_cond_recv(conn->handle.fd);
}
return done;
if ((!fdtab[conn->handle.fd].linger_risk) ||
(cur_poller.flags & HAP_POLL_F_RDHUP)) {
- fd_done_recv(conn->handle.fd);
break;
}
}
goto read0;
}
else if (errno == EAGAIN || errno == ENOTCONN) {
- fd_cant_recv(conn->handle.fd);
break;
}
else if (errno != EINTR) {
}
else if (ret == 0 || errno == EAGAIN || errno == ENOTCONN || errno == EINPROGRESS) {
/* nothing written, we need to poll for write first */
- fd_cant_send(conn->handle.fd);
break;
}
else if (errno != EINTR) {
}
if (unlikely(conn->flags & CO_FL_WAIT_L4_CONN) && done) {
conn->flags &= ~CO_FL_WAIT_L4_CONN;
- fd_cond_recv(conn->handle.fd);
}
if (done > 0) {