aboutsummaryrefslogtreecommitdiff
path: root/src/platform/windows
diff options
context:
space:
mode:
Diffstat (limited to 'src/platform/windows')
-rw-r--r--src/platform/windows/win_tcpconn.c16
-rw-r--r--src/platform/windows/win_tcpdial.c11
-rw-r--r--src/platform/windows/win_tcplisten.c7
3 files changed, 10 insertions, 24 deletions
diff --git a/src/platform/windows/win_tcpconn.c b/src/platform/windows/win_tcpconn.c
index 2f2fd378..bd7f8504 100644
--- a/src/platform/windows/win_tcpconn.c
+++ b/src/platform/windows/win_tcpconn.c
@@ -121,15 +121,11 @@ static void
tcp_recv(void *arg, nni_aio *aio)
{
nni_tcp_conn *c = arg;
- int rv;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
+ nni_aio_reset(aio);
nni_mtx_lock(&c->mtx);
- if ((rv = nni_aio_schedule(aio, tcp_recv_cancel, c)) != 0) {
+ if (!nni_aio_start(aio, tcp_recv_cancel, c)) {
nni_mtx_unlock(&c->mtx);
- nni_aio_finish_error(aio, rv);
return;
}
nni_list_append(&c->recv_aios, aio);
@@ -230,15 +226,11 @@ static void
tcp_send(void *arg, nni_aio *aio)
{
nni_tcp_conn *c = arg;
- int rv;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
+ nni_aio_reset(aio);
nni_mtx_lock(&c->mtx);
- if ((rv = nni_aio_schedule(aio, tcp_send_cancel, c)) != 0) {
+ if (!nni_aio_start(aio, tcp_send_cancel, c)) {
nni_mtx_unlock(&c->mtx);
- nni_aio_finish_error(aio, rv);
return;
}
nni_list_append(&c->send_aios, aio);
diff --git a/src/platform/windows/win_tcpdial.c b/src/platform/windows/win_tcpdial.c
index c0385648..474bd79f 100644
--- a/src/platform/windows/win_tcpdial.c
+++ b/src/platform/windows/win_tcpdial.c
@@ -196,9 +196,7 @@ nni_tcp_dial(nni_tcp_dialer *d, const nni_sockaddr *sa, nni_aio *aio)
nni_tcp_conn *c;
int rv;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
+ nni_aio_reset(aio);
if ((len = nni_win_nn2sockaddr(&ss, sa)) <= 0) {
nni_aio_finish_error(aio, NNG_EADDRINVAL);
@@ -246,14 +244,13 @@ nni_tcp_dial(nni_tcp_dialer *d, const nni_sockaddr *sa, nni_aio *aio)
return;
}
- c->dialer = d;
- nni_aio_set_prov_data(aio, c);
- if ((rv = nni_aio_schedule(aio, tcp_dial_cancel, d)) != 0) {
+ if (!nni_aio_start(aio, tcp_dial_cancel, d)) {
nni_mtx_unlock(&d->mtx);
nng_stream_free(&c->ops);
- nni_aio_finish_error(aio, rv);
return;
}
+ nni_aio_set_prov_data(aio, c);
+ c->dialer = d;
c->conn_aio = aio;
nni_aio_list_append(&d->aios, aio);
diff --git a/src/platform/windows/win_tcplisten.c b/src/platform/windows/win_tcplisten.c
index 4e4fb090..e7c7a966 100644
--- a/src/platform/windows/win_tcplisten.c
+++ b/src/platform/windows/win_tcplisten.c
@@ -382,9 +382,7 @@ nni_tcp_listener_accept(nni_tcp_listener *l, nni_aio *aio)
{
int rv;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
+ nni_aio_reset(aio);
nni_mtx_lock(&l->mtx);
if (!l->started) {
@@ -393,9 +391,8 @@ nni_tcp_listener_accept(nni_tcp_listener *l, nni_aio *aio)
return;
}
- if ((rv = nni_aio_schedule(aio, tcp_accept_cancel, l)) != 0) {
+ if (!nni_aio_start(aio, tcp_accept_cancel, l)) {
nni_mtx_unlock(&l->mtx);
- nni_aio_finish_error(aio, rv);
return;
}