mgr->workers = isc_mem_get(mctx, workers * sizeof(isc__networker_t));
for (size_t i = 0; i < workers; i++) {
- int r;
isc__networker_t *worker = &mgr->workers[i];
+ int r;
+
*worker = (isc__networker_t){
.mgr = mgr,
.id = i,
};
r = uv_loop_init(&worker->loop);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_loop_init, r);
worker->loop.data = &mgr->workers[i];
r = uv_async_init(&worker->loop, &worker->async, async_cb);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_async_init, r);
isc_mutex_init(&worker->lock);
isc_condition_init(&worker->cond_prio);
isc_mutex_destroy(&worker->lock);
r = uv_loop_close(&worker->loop);
- INSIST(r == 0);
+ UV_RUNTIME_CHECK(uv_loop_close, r);
for (size_t type = 0; type < NETIEVENT_MAX; type++) {
isc_queue_destroy(worker->ievents[type]);
void
isc__nmsocket_timer_restart(isc_nmsocket_t *sock) {
- int r = 0;
-
REQUIRE(VALID_NMSOCK(sock));
if (atomic_load(&sock->connecting)) {
+ int r;
+
if (sock->connect_timeout == 0) {
return;
}
r = uv_timer_start(&sock->timer,
isc__nmsocket_connecttimeout_cb,
sock->connect_timeout + 10, 0);
+ UV_RUNTIME_CHECK(uv_timer_start, r);
} else {
+ int r;
+
if (sock->read_timeout == 0) {
return;
}
r = uv_timer_start(&sock->timer, isc__nmsocket_readtimeout_cb,
sock->read_timeout, 0);
+ UV_RUNTIME_CHECK(uv_timer_start, r);
}
-
- RUNTIME_CHECK(r == 0);
}
bool
void
isc__nmsocket_timer_stop(isc_nmsocket_t *sock) {
+ int r;
+
REQUIRE(VALID_NMSOCK(sock));
/* uv_timer_stop() is idempotent, no need to check if running */
- int r = uv_timer_stop(&sock->timer);
- RUNTIME_CHECK(r == 0);
+ r = uv_timer_stop(&sock->timer);
+ UV_RUNTIME_CHECK(uv_timer_stop, r);
}
isc__nm_uvreq_t *
case isc_nm_udpsocket:
r = uv_udp_recv_start(&sock->uv_handle.udp, isc__nm_alloc_cb,
isc__nm_udp_read_cb);
+ UV_RUNTIME_CHECK(uv_udp_recv_start, r);
break;
case isc_nm_tcpsocket:
r = uv_read_start(&sock->uv_handle.stream, isc__nm_alloc_cb,
isc__nm_tcp_read_cb);
+ UV_RUNTIME_CHECK(uv_read_start, r);
break;
case isc_nm_tcpdnssocket:
r = uv_read_start(&sock->uv_handle.stream, isc__nm_alloc_cb,
isc__nm_tcpdns_read_cb);
+ UV_RUNTIME_CHECK(uv_read_start, r);
break;
default:
INSIST(0);
ISC_UNREACHABLE();
}
- RUNTIME_CHECK(r == 0);
sock->reading = true;
}
switch (sock->type) {
case isc_nm_udpsocket:
r = uv_udp_recv_stop(&sock->uv_handle.udp);
+ UV_RUNTIME_CHECK(uv_udp_recv_stop, r);
break;
case isc_nm_tcpsocket:
case isc_nm_tcpdnssocket:
r = uv_read_stop(&sock->uv_handle.stream);
+ UV_RUNTIME_CHECK(uv_read_stop, r);
break;
default:
INSIST(0);
ISC_UNREACHABLE();
}
- RUNTIME_CHECK(r == 0);
sock->reading = false;
}
r = uv_queue_work(&worker->loop, &work->req, isc__nm_work_cb,
isc__nm_after_work_cb);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_queue_work, r);
}
#ifdef NETMGR_TRACE
RUNTIME_CHECK(result == ISC_R_SUCCESS);
r = uv_tcp_init(&worker->loop, &sock->uv_handle.tcp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_tcp_init, r);
uv_handle_set_data(&sock->uv_handle.handle, sock);
r = uv_timer_init(&worker->loop, &sock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
r = uv_tcp_open(&sock->uv_handle.tcp, sock->fd);
if (r != 0) {
/* TODO: set min mss */
r = uv_tcp_init(&worker->loop, &sock->uv_handle.tcp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_tcp_init, r);
uv_handle_set_data(&sock->uv_handle.handle, sock);
/* This keeps the socket alive after everything else is gone */
isc__nmsocket_attach(sock, &(isc_nmsocket_t *){ NULL });
r = uv_timer_init(&worker->loop, &sock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
uv_handle_set_data((uv_handle_t *)&sock->timer, sock);
worker = &csock->mgr->workers[isc_nm_tid()];
r = uv_tcp_init(&worker->loop, &csock->uv_handle.tcp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_tcp_init, r);
uv_handle_set_data(&csock->uv_handle.handle, csock);
r = uv_timer_init(&worker->loop, &csock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
uv_handle_set_data((uv_handle_t *)&csock->timer, csock);
r = uv_accept(&ssock->uv_handle.stream, &csock->uv_handle.stream);
atomic_store(&sock->connecting, true);
r = uv_tcp_init(&worker->loop, &sock->uv_handle.tcp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_tcp_init, r);
uv_handle_set_data(&sock->uv_handle.handle, sock);
r = uv_timer_init(&worker->loop, &sock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
if (isc__nm_closing(sock)) {
result = ISC_R_CANCELED;
/* TODO: set min mss */
r = uv_tcp_init(&worker->loop, &sock->uv_handle.tcp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_tcp_init, r);
uv_handle_set_data(&sock->uv_handle.handle, sock);
/* This keeps the socket alive after everything else is gone */
isc__nmsocket_attach(sock, &(isc_nmsocket_t *){ NULL });
r = uv_timer_init(&worker->loop, &sock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
uv_handle_set_data((uv_handle_t *)&sock->timer, sock);
LOCK(&sock->parent->lock);
worker = &csock->mgr->workers[csock->tid];
r = uv_tcp_init(&worker->loop, &csock->uv_handle.tcp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_tcp_init, r);
uv_handle_set_data(&csock->uv_handle.handle, csock);
r = uv_timer_init(&worker->loop, &csock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
uv_handle_set_data((uv_handle_t *)&csock->timer, csock);
r = uv_accept(&ssock->uv_handle.stream, &csock->uv_handle.stream);
bufs[0].base = uvreq->uvbuf.base + (r - 2);
bufs[0].len = uvreq->uvbuf.len - (r - 2);
} else if (r == UV_ENOSYS || r == UV_EAGAIN) {
- /* uv_try_write not support, send asynchronously */
+ /* uv_try_write not supported, send asynchronously */
} else {
/* error sending data */
result = isc__nm_uverr2result(r);
}
return;
-
fail:
if (result != ISC_R_SUCCESS) {
isc__nm_incstats(sock->mgr, sock->statsindex[STATID_SENDFAIL]);
uv_init_flags |= UV_UDP_RECVMMSG;
#endif
r = uv_udp_init_ex(&worker->loop, &sock->uv_handle.udp, uv_init_flags);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_udp_init_ex, r);
uv_handle_set_data(&sock->uv_handle.handle, sock);
/* This keeps the socket alive after everything else is gone */
isc__nmsocket_attach(sock, &(isc_nmsocket_t *){ NULL });
r = uv_timer_init(&worker->loop, &sock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
uv_handle_set_data((uv_handle_t *)&sock->timer, sock);
LOCK(&sock->parent->lock);
atomic_store(&sock->connecting, true);
r = uv_udp_init(&worker->loop, &sock->uv_handle.udp);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_udp_init, r);
uv_handle_set_data(&sock->uv_handle.handle, sock);
r = uv_timer_init(&worker->loop, &sock->timer);
- RUNTIME_CHECK(r == 0);
+ UV_RUNTIME_CHECK(uv_timer_init, r);
uv_handle_set_data((uv_handle_t *)&sock->timer, sock);
r = uv_udp_open(&sock->uv_handle.udp, sock->fd);