From 031f7f441f88379d5359a6e96cdd2fe296052070 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Fri, 14 Jul 2017 19:43:09 -0700 Subject: Implemented asynchronous (fully) accept. This logic leaves a race condition in the dial side, which will be fixed with a subsequent change to convert that to fully asynchronous as well. --- src/core/endpt.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/core/endpt.h') diff --git a/src/core/endpt.h b/src/core/endpt.h index f37ea7cc..a47586a0 100644 --- a/src/core/endpt.h +++ b/src/core/endpt.h @@ -29,12 +29,16 @@ struct nni_ep { nni_thr ep_thr; int ep_mode; int ep_started; + int ep_stop; int ep_closed; // full shutdown int ep_bound; // true if we bound locally nni_mtx ep_mtx; nni_cv ep_cv; nni_pipe * ep_pipe; // Connected pipe (dialers only) nni_list ep_pipes; + nni_aio ep_acc_aio; + nni_aio ep_con_aio; + nni_taskq_ent ep_reap_tqe; }; enum nni_ep_mode { @@ -45,13 +49,10 @@ enum nni_ep_mode { extern int nni_ep_sys_init(void); extern void nni_ep_sys_fini(void); extern int nni_ep_find(nni_ep **, uint32_t); -extern void nni_ep_hold(nni_ep *); -extern void nni_ep_rele(nni_ep *); extern uint32_t nni_ep_id(nni_ep *); extern int nni_ep_create(nni_ep **, nni_sock *, const char *, int); extern void nni_ep_stop(nni_ep *); extern void nni_ep_close(nni_ep *); -extern void nni_ep_remove(nni_ep *); extern int nni_ep_dial(nni_ep *, int); extern int nni_ep_listen(nni_ep *, int); extern void nni_ep_list_init(nni_list *); -- cgit v1.2.3-70-g09d2