aboutsummaryrefslogtreecommitdiff
path: root/src/platform/posix
diff options
context:
space:
mode:
Diffstat (limited to 'src/platform/posix')
-rw-r--r--src/platform/posix/posix_ipcconn.c6
-rw-r--r--src/platform/posix/posix_ipcdial.c4
-rw-r--r--src/platform/posix/posix_ipclisten.c4
-rw-r--r--src/platform/posix/posix_resolv_gai.c13
-rw-r--r--src/platform/posix/posix_tcpconn.c4
-rw-r--r--src/platform/posix/posix_tcpdial.c4
-rw-r--r--src/platform/posix/posix_tcplisten.c4
-rw-r--r--src/platform/posix/posix_udp.c4
8 files changed, 22 insertions, 21 deletions
diff --git a/src/platform/posix/posix_ipcconn.c b/src/platform/posix/posix_ipcconn.c
index 5a56d23e..0dae8bae 100644
--- a/src/platform/posix/posix_ipcconn.c
+++ b/src/platform/posix/posix_ipcconn.c
@@ -247,9 +247,9 @@ ipc_conn_cb(nni_posix_pfd *pfd, int events, void *arg)
}
static void
-ipc_conn_cancel(nni_aio *aio, int rv)
+ipc_conn_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_ipc_conn *c = nni_aio_get_prov_data(aio);
+ nni_ipc_conn *c = arg;
nni_mtx_lock(&c->mtx);
if (nni_aio_list_active(aio)) {
@@ -352,7 +352,7 @@ ipc_conn_peerid(nni_ipc_conn *c, uint64_t *euid, uint64_t *egid,
return (0);
#elif defined(NNG_HAVE_SOCKPEERCRED)
struct sockpeercred uc;
- socklen_t len = sizeof(uc);
+ socklen_t len = sizeof(uc);
if (getsockopt(fd, SOL_SOCKET, SO_PEERCRED, &uc, &len) != 0) {
return (nni_plat_errno(errno));
}
diff --git a/src/platform/posix/posix_ipcdial.c b/src/platform/posix/posix_ipcdial.c
index 13732911..3d0ad0d8 100644
--- a/src/platform/posix/posix_ipcdial.c
+++ b/src/platform/posix/posix_ipcdial.c
@@ -78,9 +78,9 @@ nni_ipc_dialer_fini(nni_ipc_dialer *d)
}
static void
-ipc_dialer_cancel(nni_aio *aio, int rv)
+ipc_dialer_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_ipc_dialer *d = nni_aio_get_prov_data(aio);
+ nni_ipc_dialer *d = arg;
nni_ipc_conn * c;
nni_mtx_lock(&d->mtx);
diff --git a/src/platform/posix/posix_ipclisten.c b/src/platform/posix/posix_ipclisten.c
index 7134c4e3..6ac3eaa8 100644
--- a/src/platform/posix/posix_ipclisten.c
+++ b/src/platform/posix/posix_ipclisten.c
@@ -172,9 +172,9 @@ ipc_listener_cb(nni_posix_pfd *pfd, int events, void *arg)
}
static void
-ipc_listener_cancel(nni_aio *aio, int rv)
+ipc_listener_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_ipc_listener *l = nni_aio_get_prov_data(aio);
+ nni_ipc_listener *l = arg;
// This is dead easy, because we'll ignore the completion if there
// isn't anything to do the accept on!
diff --git a/src/platform/posix/posix_resolv_gai.c b/src/platform/posix/posix_resolv_gai.c
index aea823a0..1c56778e 100644
--- a/src/platform/posix/posix_resolv_gai.c
+++ b/src/platform/posix/posix_resolv_gai.c
@@ -57,17 +57,17 @@ struct resolv_item {
};
static void
-resolv_cancel(nni_aio *aio, int rv)
+resolv_cancel(nni_aio *aio, void *arg, int rv)
{
- resolv_item *item;
+ resolv_item *item = arg;
nni_mtx_lock(&resolv_mtx);
- if ((item = nni_aio_get_prov_data(aio)) == NULL) {
+ if (item != nni_aio_get_prov_extra(aio, 0)) {
// Already canceled?
nni_mtx_unlock(&resolv_mtx);
return;
}
- nni_aio_set_prov_data(aio, NULL);
+ nni_aio_set_prov_extra(aio, 0, NULL);
if (nni_aio_list_active(aio)) {
// We have not been picked up by a resolver thread yet,
// so we can just discard everything.
@@ -263,6 +263,7 @@ resolv_ip(const char *host, const char *serv, int passive, int family,
if (resolv_fini) {
rv = NNG_ECLOSED;
} else {
+ nni_aio_set_prov_extra(aio, 0, item);
rv = nni_aio_schedule(aio, resolv_cancel, item);
}
if (rv != 0) {
@@ -310,7 +311,7 @@ resolv_worker(void *notused)
continue;
}
- item = nni_aio_get_prov_data(aio);
+ item = nni_aio_get_prov_extra(aio, 0);
nni_aio_list_remove(aio);
// Now attempt to do the work. This runs synchronously.
@@ -321,7 +322,7 @@ resolv_worker(void *notused)
// Check to make sure we were not canceled.
if ((aio = item->aio) != NULL) {
nng_sockaddr *sa = nni_aio_get_input(aio, 0);
- nni_aio_set_prov_data(aio, NULL);
+ nni_aio_set_prov_extra(aio, 0, NULL);
item->aio = NULL;
memcpy(sa, &item->sa, sizeof(*sa));
nni_aio_finish(aio, rv, 0);
diff --git a/src/platform/posix/posix_tcpconn.c b/src/platform/posix/posix_tcpconn.c
index c0352c55..788c4e9f 100644
--- a/src/platform/posix/posix_tcpconn.c
+++ b/src/platform/posix/posix_tcpconn.c
@@ -243,9 +243,9 @@ tcp_conn_cb(nni_posix_pfd *pfd, int events, void *arg)
}
static void
-tcp_conn_cancel(nni_aio *aio, int rv)
+tcp_conn_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_tcp_conn *c = nni_aio_get_prov_data(aio);
+ nni_tcp_conn *c = arg;
nni_mtx_lock(&c->mtx);
if (nni_aio_list_active(aio)) {
diff --git a/src/platform/posix/posix_tcpdial.c b/src/platform/posix/posix_tcpdial.c
index 21f6ecfe..ab3f3545 100644
--- a/src/platform/posix/posix_tcpdial.c
+++ b/src/platform/posix/posix_tcpdial.c
@@ -78,9 +78,9 @@ nni_tcp_dialer_fini(nni_tcp_dialer *d)
}
static void
-tcp_dialer_cancel(nni_aio *aio, int rv)
+tcp_dialer_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_tcp_dialer *d = nni_aio_get_prov_data(aio);
+ nni_tcp_dialer *d = arg;
nni_tcp_conn * c;
nni_mtx_lock(&d->mtx);
diff --git a/src/platform/posix/posix_tcplisten.c b/src/platform/posix/posix_tcplisten.c
index 8c186885..bc414cd0 100644
--- a/src/platform/posix/posix_tcplisten.c
+++ b/src/platform/posix/posix_tcplisten.c
@@ -165,9 +165,9 @@ tcp_listener_cb(nni_posix_pfd *pfd, int events, void *arg)
}
static void
-tcp_listener_cancel(nni_aio *aio, int rv)
+tcp_listener_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_tcp_listener *l = nni_aio_get_prov_data(aio);
+ nni_tcp_listener *l = arg;
// This is dead easy, because we'll ignore the completion if there
// isn't anything to do the accept on!
diff --git a/src/platform/posix/posix_udp.c b/src/platform/posix/posix_udp.c
index 873a02a1..6b1ef399 100644
--- a/src/platform/posix/posix_udp.c
+++ b/src/platform/posix/posix_udp.c
@@ -269,9 +269,9 @@ nni_plat_udp_close(nni_plat_udp *udp)
}
void
-nni_plat_udp_cancel(nni_aio *aio, int rv)
+nni_plat_udp_cancel(nni_aio *aio, void *arg, int rv)
{
- nni_plat_udp *udp = nni_aio_get_prov_data(aio);
+ nni_plat_udp *udp = arg;
nni_mtx_lock(&udp->udp_mtx);
if (nni_aio_list_active(aio)) {