PARA_ERROR_LOG("shutdown(SHUT_RD): %s\n", strerror(errno));
goto err;
}
+ ret = mark_fd_nonblocking(fd);
+ if (ret < 0) {
+ PARA_ERROR_LOG("%s\n", para_strerror(-ret));
+ goto err;
+ }
dc = para_calloc(sizeof(struct dccp_client));
- dc->fd = ret;
+ dc->fd = fd;
dc->name = make_message("%s", remote_name(dc->fd));
PARA_NOTICE_LOG("connection from %s\n", dc->name);
para_list_add(&dc->node, &clients);
add_close_on_fork_list(dc->fd);
- mark_fd_nonblocking(dc->fd);
dc->cq = cq_new(DCCP_MAX_PENDING_BYTES);
return;
err: