From 6f8944a96a5acd509014caae4e57dafbba51e126 Mon Sep 17 00:00:00 2001
From: Garrett D'Amore <garrett@damore.org>
Date: Sat, 30 Mar 2024 22:14:33 -0700
Subject: finished proto open pages

---
 docs/reference/src/compat/nn_device.3compat.adoc | 59 ++++++++++++++++++++++++
 1 file changed, 59 insertions(+)
 create mode 100644 docs/reference/src/compat/nn_device.3compat.adoc

(limited to 'docs/reference/src/compat/nn_device.3compat.adoc')

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)]
-- 
cgit v1.2.3-70-g09d2

