diff options
| author | Garrett D'Amore <garrett@damore.org> | 2024-12-26 13:20:06 -0800 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2024-12-26 13:54:08 -0800 |
| commit | f51609ff40f6217e0de81706f953a18a90489ba9 (patch) | |
| tree | 08cd30dc83e6fbd224456a018a906a12d6734fd8 /src/platform | |
| parent | e3178bd34ced788b8e16e5e0c3e8f712cd41de6a (diff) | |
| download | nng-f51609ff40f6217e0de81706f953a18a90489ba9.tar.gz nng-f51609ff40f6217e0de81706f953a18a90489ba9.tar.bz2 nng-f51609ff40f6217e0de81706f953a18a90489ba9.zip | |
resolver: use nni_aio_start
Diffstat (limited to 'src/platform')
| -rw-r--r-- | src/platform/posix/posix_resolv_gai.c | 6 | ||||
| -rw-r--r-- | src/platform/windows/win_resolv.c | 18 |
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); |
