From f4de6b5302df8befbd2b229b701d0bf9ca81a5fb Mon Sep 17 00:00:00 2001
From: Garrett D'Amore <garrett@damore.org>
Date: Wed, 14 Mar 2018 15:19:26 -0700
Subject: Markup changes, started adding type documentation.

---
 docs/man/nng_socket.adoc | 54 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 docs/man/nng_socket.adoc

(limited to 'docs/man/nng_socket.adoc')

diff --git a/docs/man/nng_socket.adoc b/docs/man/nng_socket.adoc
new file mode 100644
index 00000000..31df4a8f
--- /dev/null
+++ b/docs/man/nng_socket.adoc
@@ -0,0 +1,54 @@
+= nng_socket(5)
+//
+// 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
+
+nng_socket - socket handle
+
+== SYNOPSIS
+
+[source, c]
+-----------
+#include <nng/nng.h>
+
+typedef uint32_t nng_socket;
+-----------
+
+== DESCRIPTION
+
+An ((`nng_socket`))(((socket))) is a handle to an underlying "`socket`" object.
+All communication between the application and remote Scalability Protocol
+peers is done through sockets.
+A given socket can have multiple dialers (<<nng_dialer#,`nng_dialer`>>)
+and/or (<<nng_listener#,`nng_listener`>>), and multiple
+pipes (<<nng_pipe#,`nng_pipe`>>), and
+may be connected to multiple transports at the same time.
+However, a given socket will have exactly one "`protocol`" associated with it,
+and is responsible for any state machines or other protocol-specific logic.
+
+NOTE: Although `nng_socket` is an integer data type, these objects are not
+ordinary file descriptors, and can only be used with the functions that
+explicitly indicate that it safe and appropropate to do so.
+
+Each `nng_socket` is created by a protocol-specific constructor, such as
+<<nng_rep0_open#,`nng_rep0_open()`>>.
+When the socket is no longer needed, it can be closed with
+<<nng_close#,`nng_close()`>>.
+
+== SEE ALSO
+
+[.text-left]
+<<libnng#,libnng(3)>>,
+<<nng_close#,nng_close(3)>>,
+<<nng_dialer#,nng_dialer(5)>>,
+<<nng_listener#,nng_listener(5)>>,
+<<nng_options#,nng_options(5)>>,
+<<nng#,nng(7)>>
-- 
cgit v1.2.3-70-g09d2

