diff options
Diffstat (limited to 'docs/man/nn_bind.3compat.adoc')
| -rw-r--r-- | docs/man/nn_bind.3compat.adoc | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/docs/man/nn_bind.3compat.adoc b/docs/man/nn_bind.3compat.adoc new file mode 100644 index 00000000..79ff2c04 --- /dev/null +++ b/docs/man/nn_bind.3compat.adoc @@ -0,0 +1,66 @@ += nn_bind(3compat) +// +// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech> +// Copyright 2018 Capitar IT Group BV <info@capitar.com> +// +// This document is supplied under the terms of the MIT License, a +// copy of which should be located in the distribution where this +// file was obtained (LICENSE.txt). A copy of the license may also be +// found online at https://opensource.org/licenses/MIT. +// + +== NAME + +nn_bind - accept connections from remote peers (compatible API) + +== SYNOPSIS + +[source, c] +---- +#include <nanomsg/nn.h> + +int nn_bind(int sock, const char *url) +---- + +== DESCRIPTION + +The `nn_bind()` function arranges for the socket _sock_ to +accept connections at the address specified by _url_. +An "`endpoint identifier`" for this socket's association with the _url_ is +returned to the caller on success. +This ID can be used with `<<nn_shutdown.3compat#,nn_shutdown()>>`` to +"`unbind`" the socket from the address at _url_. + +NOTE: This function is provided for API +<<nng_compat.3compat#,compatibility>> with legacy _libnanomsg_. +Consider using the relevant <<libnng.3#,modern API>> instead. + +NOTE: The bind operation is performed asynchronously, and may not have +completed before this function returns control to the caller. + +IMPORTANT: Only transports supported by legacy _libnanomsg_ may be +used with this function. +In particular, only the schemes `tcp://`, `ipc://`, `inproc://`, and `ws://` are +supported with this function. +(Use the <<libnng.3#,modern API>> to use other schemes.) + +== RETURN VALUES + +This function returns a positive identifier on success, and -1 on error. + +== ERRORS + +[horizontal] +`EADDRINUSE`:: The address specified by _url_ is already in use. +`EADDRNOTAVAIL`:: The address specified by _url_ is not available. +`EBADF`:: The socket _sock_ is not open. +`EINVAL`:: An invalid _url_ was supplied. + +== SEE ALSO + +<<nn_connect.3compat#,nn_connect(3compat)>>, +<<nn_errno.3compat#,nn_errno(3compat)>>, +<<nn_shutdown.3compat#,nn_shutdown(3compat)>>, +<<nn_socket.3compat#,nn_socket(3compat)>>, +<<nng_compat.3compat#,nn_compat(3compat)>>, +<<nng.7#,nng(7)>> |
