diff options
Diffstat (limited to 'docs/reference/src/compat/nn_device.3compat.adoc')
| -rw-r--r-- | docs/reference/src/compat/nn_device.3compat.adoc | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/docs/reference/src/compat/nn_device.3compat.adoc b/docs/reference/src/compat/nn_device.3compat.adoc new file mode 100644 index 00000000..c69e1e04 --- /dev/null +++ b/docs/reference/src/compat/nn_device.3compat.adoc @@ -0,0 +1,59 @@ += nn_device(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_device - create forwarding device (compatible API) + +== SYNOPSIS + +[source,c] +---- +#include <nanomsg/nn.h> + +int nn_device(int sock1, int sock2); +---- + +== DESCRIPTION + +The `nn_device()` function is used to create a forwarder, where messages +received on one of the two sockets _sock1_ and _sock2_ are forwarded to +the other. + +NOTE: This function is provided for API +xref:nng_compat.3compat.adoc[compatibility] with legacy _libnanomsg_. +Consider using the relevant xref:libnng.3.adoc[modern API] instead. + +The two sockets must be compatible, and must be +xref:nng.7.adoc#raw_mode[raw mode] +sockets. +More detail about devices and how they can be used is available in the +new style xref:nng_device.3.adoc[nng_device()] documentation. + +== RETURN VALUES + +This function blocks forever, and will return -1 only when +one of the sockets is closed or an error occurs. + +== ERRORS + +[horizontal] +`EBADF`:: One of the two sockets is invalid or not open, or has +`EINVAL`:: The sockets are not compatible with each other, or not both raw. +`ENOMEM`:: Insufficient memory is available. + +== SEE ALSO + +[.text-left] +xref:nn_errno.3compat.adoc[nn_errno(3compat)], +xref:nn_socket.3compat.adoc[nn_socket(3compat)], +xref:nng_compat.3compat.adoc[nng_compat(3compat)], +xref:nng.7.adoc[nng(7)] |
