aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2024-12-26 13:20:06 -0800
committerGarrett D'Amore <garrett@damore.org>2024-12-26 13:54:08 -0800
commitf51609ff40f6217e0de81706f953a18a90489ba9 (patch)
tree08cd30dc83e6fbd224456a018a906a12d6734fd8
parente3178bd34ced788b8e16e5e0c3e8f712cd41de6a (diff)
downloadnng-f51609ff40f6217e0de81706f953a18a90489ba9.tar.gz
nng-f51609ff40f6217e0de81706f953a18a90489ba9.tar.bz2
nng-f51609ff40f6217e0de81706f953a18a90489ba9.zip
resolver: use nni_aio_start
-rw-r--r--src/platform/posix/posix_resolv_gai.c6
-rw-r--r--src/platform/windows/win_resolv.c18
2 files changed, 10 insertions, 14 deletions
diff --git a/src/platform/posix/posix_resolv_gai.c b/src/platform/posix/posix_resolv_gai.c
index c3336f13..b5f48ecc 100644
--- a/src/platform/posix/posix_resolv_gai.c
+++ b/src/platform/posix/posix_resolv_gai.c
@@ -231,9 +231,7 @@ nni_resolv_ip(const char *host, uint16_t port, int af, bool passive,
resolv_item *item;
sa_family_t fam;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
+ nni_aio_reset(aio);
if (host != NULL) {
if ((strlen(host) >= sizeof(item->host)) ||
(strcmp(host, "*") == 0)) {
@@ -283,7 +281,7 @@ nni_resolv_ip(const char *host, uint16_t port, int af, bool passive,
nni_mtx_lock(&resolv_mtx);
nni_aio_set_prov_data(aio, item);
- if (!nni_aio_defer(aio, resolv_cancel, item)) {
+ if (!nni_aio_start(aio, resolv_cancel, item)) {
nni_mtx_unlock(&resolv_mtx);
resolv_free_item(item);
return;
diff --git a/src/platform/windows/win_resolv.c b/src/platform/windows/win_resolv.c
index 46695b7e..5f742d42 100644
--- a/src/platform/windows/win_resolv.c
+++ b/src/platform/windows/win_resolv.c
@@ -187,9 +187,7 @@ nni_resolv_ip(const char *host, uint16_t port, int family, bool passive,
int fam;
int rv;
- if (nni_aio_begin(aio) != 0) {
- return;
- }
+ nni_aio_reset(aio);
if (host != NULL) {
if ((strlen(host) >= sizeof(item->host)) ||
(strcmp(host, "*") == 0)) {
@@ -236,18 +234,18 @@ nni_resolv_ip(const char *host, uint16_t port, int family, bool passive,
item->family = fam;
nni_mtx_lock(&resolv_mtx);
- if (resolv_fini) {
- rv = NNG_ECLOSED;
- } else {
- nni_aio_set_prov_data(aio, item);
- rv = nni_aio_schedule(aio, resolv_cancel, item);
+ if (!nni_aio_start(aio, resolv_cancel, item)) {
+ nni_mtx_unlock(&resolv_mtx);
+ resolv_free_item(item);
+ return;
}
- if (rv != 0) {
+ if (resolv_fini) {
nni_mtx_unlock(&resolv_mtx);
resolv_free_item(item);
- nni_aio_finish_error(aio, rv);
+ nni_aio_finish_error(aio, NNG_ECLOSED);
return;
}
+ nni_aio_set_prov_data(aio, item);
nni_list_append(&resolv_aios, aio);
nni_cv_wake1(&resolv_cv);
nni_mtx_unlock(&resolv_mtx);