summaryrefslogtreecommitdiff
path: root/doc/s6-fdholder-transferdumpc.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/s6-fdholder-transferdumpc.html')
-rw-r--r--doc/s6-fdholder-transferdumpc.html82
1 files changed, 82 insertions, 0 deletions
diff --git a/doc/s6-fdholder-transferdumpc.html b/doc/s6-fdholder-transferdumpc.html
new file mode 100644
index 0000000..7bd6aa0
--- /dev/null
+++ b/doc/s6-fdholder-transferdumpc.html
@@ -0,0 +1,82 @@
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta http-equiv="Content-Language" content="en" />
+ <title>s6: the s6-fdholder-transferdumpc program</title>
+ <meta name="Description" content="s6: the s6-fdholder-transferdumpc program" />
+ <meta name="Keywords" content="s6 s6-fdholder fd-holding fd-holder fd dump transfer unix socket activation" />
+ <!-- <link rel="stylesheet" type="text/css" href="http://skarnet.org/default.css" /> -->
+ </head>
+<body>
+
+<p>
+<a href="index.html">s6</a><br />
+<a href="http://skarnet.org/software/">Software</a><br />
+<a href="http://skarnet.org/">skarnet.org</a>
+</p>
+
+<h1> The <tt>s6-fdholder-transferdumpc</tt> program </h1>
+
+<p>
+<tt>s6-fdholder-transferdumpc</tt> talks to two
+<a href="s6-fdholderd.html">fd-holding daemons</a>: the source of the
+transfer on its
+standard input, and the destination of the transfer on its standard output,
+both being
+open Unix domain sockets. It retrieves the entire storage state of
+the source daemon and dumps it into the destination daemon.
+</p>
+
+<h2> Interface </h2>
+
+<pre>
+ s6-fdholder-transferdumpc [ -t <em>timeoutfrom</em> ] [ -T timeoutto ]
+</pre>
+
+<ul>
+ <li> s6-fdholder-transferdumpc expects to talk to a listening
+<a href="s6-fdholderd.html">s6-fdholderd</a> program on its descriptor 0 and
+to another one on its descriptor 1. </li>
+ <li> It gets the entire set of file descriptors from the first
+server, with their identifiers and possibly expiration dates. </li>
+ <li> It stores that set into the second server. The set is
+<em>added</em> to the second server, which keeps the descriptors
+it was already holding. </li>
+ <li> It then exits 0, or 1 if a server returned an error. </li>
+</ul>
+
+<h2> Options </h2>
+
+<ul>
+<li> <tt>-t&nbsp;<em>timeoutfrom</em></tt>&nbsp;: if the set-retrieving
+operation cannot be processed in <em>timeoutfrom</em> milliseconds, then
+fail with an error message.
+Communications with the server should be near-instant, so this option is
+only here to protect users against programming errors. </li>
+<li> <tt>-T&nbsp;<em>timeoutto</em></tt>&nbsp;: same thing with the
+set-storing operation. </li>
+</ul>
+
+<h2> Notes </h2>
+
+<ul>
+ <li> s6-fdholder-transferdumpc is the "internal" version of
+<a href="s6-fdholder-transferdump.html">s6-fdholder-transferdump</a>. It simply
+expects to be run with file descriptors already open to both
+servers; <a href="s6-fdholder-transferdump.html">s6-fdholder-transferdump</a>
+takes care of all the plumbing. </li>
+ <li> The error messages for the s6-fdholder suite are explained
+<a href="s6-fdholder-errorcodes.html">here</a>. </li>
+ <li> Dumping the entire state of <a href="s6-fdholderd.html">s6-fdholderd</a>
+requires special authorizations. Make sure the s6-fdholderd instances are
+<a href="s6-fdholderd.html#configuration">configured</a> to accept
+dump-getting and dump-setting requests from your client. </li>
+ <li> The point of the
+<a href="s6-fdholder-transferdump.html">s6-fdholder-transferdump</a> and
+s6-fdholder-transferdumpc programs is to move a set of fds from one
+daemon to another, for instance in the event that the first one has to
+to shut down for an upgrade. </li>
+</ul>
+
+</body>
+</html>