<?xml version="1.0" encoding="UTF-8"?>
<!-- **************************************************************************
.... For copyright and licensing terms, see the file named COPYING.
.... **************************************************************************
.-->
<?xml-stylesheet href="docbook-xml.css" type="text/css"?>

<refentry id="recordio">

<refmeta xmlns:xi="http://www.w3.org/2001/XInclude">
<refentrytitle>recordio</refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class="manual">user commands</refmiscinfo>
<refmiscinfo class="source">nosh</refmiscinfo>
<xi:include href="version.xml" />
</refmeta>

<refnamediv>
<refname>recordio</refname>
<refpurpose>run a program recording its standard input and output</refpurpose>
</refnamediv>

<refsynopsisdiv>
<cmdsynopsis>
<command>recordio</command>
<arg choice='req'><replaceable>next-prog</replaceable></arg>
</cmdsynopsis>
</refsynopsisdiv>

<refsection><title>Description</title>

<para>
<command>recordio</command> is a utility that chain loads <replaceable>next-prog</replaceable> with the <citerefentry><refentrytitle>execvp</refentrytitle><manvolnum>3</manvolnum></citerefentry>
function.
It redirects the standard input and standard output through a pipe, whose other end is a child process that it spawns.
</para>

<para>
The child process has the original standard input and standard output.
It records, to standard error, all of the I/O over the standard input and standard output; as well as passing it through the pipe.
</para>

</refsection>
<refsection><title>See also</title>

<variablelist>
<varlistentry>
<term>
<citerefentry><refentrytitle>ssl-run</refentrytitle><manvolnum>1</manvolnum></citerefentry>
</term>
<listitem>
<para>a similar program that encrypts/decrypts standard I/O as it passes through</para>
</listitem>
</varlistentry>
</variablelist>

</refsection>
<refsection><title>Author</title>
<para><author><personname><firstname>Jonathan</firstname> <surname>de Boyne Pollard</surname></personname></author></para>
</refsection>

</refentry>
