aboutsummaryrefslogtreecommitdiff
path: root/src/core/pipe.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/pipe.h')
-rw-r--r--src/core/pipe.h39
1 files changed, 2 insertions, 37 deletions
diff --git a/src/core/pipe.h b/src/core/pipe.h
index 5c505514..1d73ce51 100644
--- a/src/core/pipe.h
+++ b/src/core/pipe.h
@@ -29,38 +29,11 @@ extern void nni_pipe_send(nni_pipe *, nni_aio *);
// Pipe operations that protocols use.
extern uint32_t nni_pipe_id(nni_pipe *);
-// nni_pipe_destroy destroys a pipe -- there must not be any other
-// references to it; this is used only during creation failures.
-extern void nni_pipe_destroy(nni_pipe *);
-
// nni_pipe_close closes the underlying transport for the pipe. Further
-// operations against will return NNG_ECLOSED.
+// operations against will return NNG_ECLOSED. This is idempotent. The
+// actual pipe will be reaped asynchronously.
extern void nni_pipe_close(nni_pipe *);
-// nni_pipe_stop is called to begin the process of tearing down the socket.
-// This function runs asynchronously, and takes care to ensure that no
-// other consumers are referencing the pipe. We assume that either the
-// socket (protocol code) or endpoint may have references to the pipe
-// when this function is called. The pipe cleanup is asynchronous and
-// make take a while depending on scheduling, etc. The pipe lock itself
-// may not be held during this, but any other locks may be.
-extern void nni_pipe_stop(nni_pipe *);
-
-// nni_pipe_create is used only by endpoints - as we don't wish to expose the
-// details of the pipe structure outside of pipe.c. This function must be
-// called without any locks held, as it will call back up into the socket and
-// endpoint, grabbing each of those locks. The function takes ownership of
-// the transport specific pipe (3rd argument), regardless of whether it
-// succeeds or not. The endpoint should be held when calling this.
-extern int nni_pipe_create2(nni_pipe **, nni_sock *, nni_tran *, void *);
-extern void nni_pipe_set_dialer(nni_pipe *, nni_dialer *);
-extern void nni_pipe_set_listener(nni_pipe *, nni_listener *);
-
-// nni_pipe_start is called by the socket to begin any startup activities
-// on the pipe before making it ready for use by protocols. For example,
-// TCP and IPC initial handshaking is performed this way.
-extern void nni_pipe_start(nni_pipe *);
-
extern uint16_t nni_pipe_proto(nni_pipe *);
extern uint16_t nni_pipe_peer(nni_pipe *);
@@ -73,14 +46,6 @@ extern int nni_pipe_getopt(
// nni_pipe_set_proto_data function. No locking is performed.
extern void *nni_pipe_get_proto_data(nni_pipe *);
-// nni_pipe_sock_list_init initializes a list of pipes, to be used by
-// a per-socket list.
-extern void nni_pipe_sock_list_init(nni_list *);
-
-// nni_pipe_ep_list_init initializes a list of pipes, to be used by
-// a per-endpoint list.
-extern void nni_pipe_ep_list_init(nni_list *);
-
// nni_pipe_find finds a pipe given its ID. It places a hold on the
// pipe, which must be released by the caller when it is done.
extern int nni_pipe_find(nni_pipe **, uint32_t);