summaryrefslogtreecommitdiff
path: root/man/v1.2.4/nng_ipc.7.html
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2020-01-23 23:24:04 -0800
committerGarrett D'Amore <garrett@damore.org>2020-01-23 23:24:04 -0800
commit8b8fdbdc2e3fef03e21177eb3710491e4c080d43 (patch)
tree0336322fa94119e9e37f9d88545ba6e58307cf2a /man/v1.2.4/nng_ipc.7.html
parentb67502ab569fafc050cb9b0380d2886bc2068ece (diff)
downloadnng-8b8fdbdc2e3fef03e21177eb3710491e4c080d43.tar.gz
nng-8b8fdbdc2e3fef03e21177eb3710491e4c080d43.tar.bz2
nng-8b8fdbdc2e3fef03e21177eb3710491e4c080d43.zip
Publishing updates for v1.2.4
Diffstat (limited to 'man/v1.2.4/nng_ipc.7.html')
-rw-r--r--man/v1.2.4/nng_ipc.7.html189
1 files changed, 189 insertions, 0 deletions
diff --git a/man/v1.2.4/nng_ipc.7.html b/man/v1.2.4/nng_ipc.7.html
new file mode 100644
index 00000000..ca640431
--- /dev/null
+++ b/man/v1.2.4/nng_ipc.7.html
@@ -0,0 +1,189 @@
+---
+version: v1.2.4
+layout: refman
+---
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta charset="UTF-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+<meta name="generator" content="Asciidoctor 2.0.10">
+<title>nng_ipc(7)</title>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
+<link rel="stylesheet" href="./asciidoctor.css">
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+</head>
+<body class="manpage toc2 toc-left">
+<div id="header">
+<h1>nng_ipc(7) Manual Page</h1>
+<div id="toc" class="toc2">
+<div id="toctitle">Table of Contents</div>
+<ul class="sectlevel1">
+<li><a href="#_synopsis">SYNOPSIS</a></li>
+<li><a href="#_description">DESCRIPTION</a>
+<ul class="sectlevel2">
+<li><a href="#_registration">Registration</a></li>
+<li><a href="#_uri_format">URI Format</a></li>
+<li><a href="#_socket_address">Socket Address</a></li>
+<li><a href="#_transport_options">Transport Options</a></li>
+</ul>
+</li>
+<li><a href="#_see_also">SEE ALSO</a></li>
+</ul>
+</div>
+<h2 id="_name">NAME</h2>
+<div class="sectionbody">
+<p>nng_ipc - IPC transport</p>
+</div>
+</div>
+<div id="content">
+<div class="sect1">
+<h2 id="_synopsis">SYNOPSIS</h2>
+<div class="sectionbody">
+<div class="listingblock">
+<div class="content">
+<pre class="pygments highlight"><code data-lang="c"><span></span><span class="tok-cp">#include</span> <span class="tok-cpf">&lt;nng/transport/ipc/ipc.h&gt;</span><span class="tok-cp"></span>
+
+<span class="tok-kt">int</span> <span class="tok-nf">nng_ipc_register</span><span class="tok-p">(</span><span class="tok-kt">void</span><span class="tok-p">);</span></code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_description">DESCRIPTION</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>
+The <em>ipc</em> transport provides communication support between
+<em>nng</em> sockets within different processes on the same host.
+For POSIX platforms, this is implemented using UNIX domain sockets.
+For Windows, this is implemented using Windows Named Pipes.
+Other platforms may have different implementation strategies.</p>
+</div>
+<div class="sect2">
+<h3 id="_registration">Registration</h3>
+<div class="paragraph">
+<p>The <em>ipc</em> transport is generally built-in to the <em>nng</em> core, so
+no extra steps to use it should be necessary.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_uri_format">URI Format</h3>
+<div class="paragraph">
+<p>
+This transport uses URIs using the scheme <code>ipc://</code>, followed by a path
+name in the file system where the socket or named pipe should be created.</p>
+</div>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+On Windows, all names are prefixed by <code>\\.\pipe\</code> and do not
+reside in the normal file system.
+On POSIX platforms, the path is taken literally, and is relative to
+the current directory, unless it begins with <code>/</code>, in which case it is
+relative to the root directory.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+When using relative paths on POSIX systems, the address used and returned
+in properties like <code>NNG_OPT_LOCADDR</code> and <code>NNG_OPT_URL</code> will also be relative.
+Consequently, they will only be interpreted the same by processes that have
+the same working directory.
+To ensure maximum portability and safety, absolute paths are recommended
+whenever possible.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+If compatibility with legacy <em>nanomsg</em> applications is required,
+then pathnames must not be longer than 122 bytes, including the final
+<code>NUL</code> byte.
+This is because legacy versions of <em>nanomsg</em> cannot express URLs
+longer than 128 bytes, including the <code>ipc://</code> prefix.
+</td>
+</tr>
+</table>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_socket_address">Socket Address</h3>
+<div class="paragraph">
+<p>When using an <a href="nng_sockaddr.5.html"><code>nng_sockaddr</code></a> structure,
+the actual structure is of type <a href="nng_sockaddr_ipc.5.html"><code>nng_sockaddr_ipc</code></a>.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_transport_options">Transport Options</h3>
+<div class="paragraph">
+<p>The following transport options are supported by this transport,
+where supported by the underlying platform.</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><a href="nng_ipc_options.5.html#NNG_OPT_IPC_PEER_GID"><code>NNG_OPT_IPC_PEER_GID</code></a></p>
+</li>
+<li>
+<p><a href="nng_ipc_options.5.html#NNG_OPT_IPC_PEER_PID"><code>NNG_OPT_IPC_PEER_PID</code></a></p>
+</li>
+<li>
+<p><a href="nng_ipc_options.5.html#NNG_OPT_IPC_PEER_UID"><code>NNG_OPT_IPC_PEER_UID</code></a></p>
+</li>
+<li>
+<p><a href="nng_ipc_options.5.html#NNG_OPT_IPC_PEER_ZONEID"><code>NNG_OPT_IPC_PEER_ZONEID</code></a></p>
+</li>
+<li>
+<p><a href="nng_ipc_options.5.html#NNG_OPT_IPC_PERMISSIONS"><code>NNG_OPT_IPC_PERMISSIONS</code></a></p>
+</li>
+<li>
+<p><a href="nng_ipc_options.5.html#NNG_OPT_IPC_SECURITY_DESCRIPTOR"><code>NNG_OPT_IPC_SECURITY_DESCRIPTOR</code></a></p>
+</li>
+<li>
+<p><a href="nng_options.5.html#NNG_OPT_LOCADDR"><code>NNG_OPT_LOCADDR</code></a></p>
+</li>
+<li>
+<p><a href="nng_options.5.html#NNG_OPT_REMADDR"><code>NNG_OPT_REMADDR</code></a></p>
+</li>
+<li>
+<p><a href="nng_options.5.html#NNG_OPT_URL"><code>NNG_OPT_URL</code></a></p>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_see_also">SEE ALSO</h2>
+<div class="sectionbody">
+<div class="paragraph text-left">
+<p><a href="nng_sockaddr.5.html">nng_sockaddr(5)</a>,
+<a href="nng_ipc_options.5.html">nng_ipc_options(5)</a>,
+<a href="nng_options.5.html">nng_options(5)</a>,
+<a href="nng.7.html">nng(7)</a></p>
+</div>
+</div>
+</div>
+</div>
+<link rel="stylesheet" href="./pygments-default.css">
+</body>
+</html> \ No newline at end of file