<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl"
	href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
	"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY VERSION "1.0">
<!ENTITY COMMANDNAME "mandos-client">
]>

<refentry>
  <refentryinfo>
    <title>&COMMANDNAME;</title>
    <!-- NWalsh's docbook scripts use this to generate the footer: -->
    <productname>&COMMANDNAME;</productname>
    <productnumber>&VERSION;</productnumber>
    <authorgroup>
      <author>
	<firstname>Björn</firstname>
	<surname>Påhlsson</surname>
	<address>
	  <email>belorn@fukt.bsnet.se</email>
	</address>
      </author>
      <author>
	<firstname>Teddy</firstname>
	<surname>Hogeborn</surname>
	<address>
	  <email>teddy@fukt.bsnet.se</email>
	</address>
      </author>
    </authorgroup>
    <copyright>
      <year>2008</year>
      <holder>Teddy Hogeborn &amp; Björn Påhlsson</holder>
    </copyright>
    <legalnotice>
      <para>
	This manual page is free software: you can redistribute it
	and/or modify it under the terms of the GNU General Public
	License as published by the Free Software Foundation,
	either version 3 of the License, or (at your option) any
	later version.
      </para>

      <para>
	This manual page is distributed in the hope that it will
	be useful, but WITHOUT ANY WARRANTY; without even the
	implied warranty of MERCHANTABILITY or FITNESS FOR A
	PARTICULAR PURPOSE.  See the GNU General Public License
	for more details.
      </para>

      <para>
	You should have received a copy of the GNU General Public
	License along with this program; If not, see
	<ulink url="http://www.gnu.org/licenses/"/>.
      </para>
    </legalnotice>
  </refentryinfo>

  <refmeta>
    <refentrytitle>&COMMANDNAME;</refentrytitle>
    <manvolnum>8mandos</manvolnum>
  </refmeta>
  
  <refnamediv>
    <refname><command>&COMMANDNAME;</command></refname>
    <refpurpose>
      get password for encrypted rootdisk
    </refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <cmdsynopsis>
      <command>&COMMANDNAME;</command>
      <arg choice='opt'>--global-options<arg choice='plain'>OPTIONS</arg></arg>
      <arg choice='opt'>--options-for<arg choice='plain'>PLUGIN:OPTIONS</arg></arg>
      <arg choice='opt'>--disable<arg choice='plain'>PLUGIN</arg></arg>
      <arg choice='opt'>--groupid<arg choice='plain'>ID</arg></arg>
      <arg choice='opt'>--userid<arg choice='plain'>ID</arg></arg>
      <arg choice='opt'>--plugin-dir<arg choice='plain'>DIRECTORY</arg></arg>
      <arg choice='opt'>--debug</arg>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>&COMMANDNAME;</command>
      <arg choice='plain'>--help</arg>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>&COMMANDNAME;</command>
      <arg choice='plain'>--usage</arg>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>&COMMANDNAME;</command>
      <arg choice='plain'>--version</arg>
    </cmdsynopsis>    
  </refsynopsisdiv>

  <refsect1 id="description">
    <title>DESCRIPTION</title>
    <para>
      <command>&COMMANDNAME;</command> is a plugin runner that waits
      for any of its plugins to return sucessfull with a password, and
      passes it to cryptsetup as stdout message. This command is not
      meant to be invoked directly, but is instead meant to be run by
      cryptsetup by being specified in /etc/crypttab as a keyscript
      and subsequlently started in the initrd environment. See
      <citerefentry><refentrytitle>crypttab</refentrytitle>
      <manvolnum>5</manvolnum></citerefentry> for more information on
      keyscripts.    
    </para>

    <para>
      plugins is looked for in the plugins directory which by default will be
      /conf/conf.d/mandos/plugins.d if not changed by option --plugin-dir.
    </para>
  </refsect1>
  <refsect1>
    <title>OPTIONS</title>
    <variablelist>
      <varlistentry>
	<term><literal>-g</literal>,<literal>--global-options
	<replaceable>OPTIONS</replaceable></literal></term>
	<listitem>
	  <para>
	    Global options given to all plugins as additional start
	    arguments.  Options are specified with a -o flag followed
	    by a comma separated string of options.
	  </para>	  
	</listitem>
      </varlistentry>

      <varlistentry>
	<term><literal>-o</literal>,<literal> --options-for
	<replaceable>PLUGIN</replaceable>:<replaceable>OPTION</replaceable>
	</literal></term>
	<listitem>
	  <para>
	    Plugin specific options given to the plugin as additional
	    start arguments.  Options are specified with a -o flag
	    followed by a comma separated string of options.
	  </para>	  
	</listitem>
      </varlistentry>      

      <varlistentry>
	<term><literal>-d</literal>,<literal> --disable
	<replaceable>PLUGIN</replaceable>
	</literal></term>
	<listitem>
	  <para>
	    Disable a specific plugin
	  </para>	  
	</listitem>
      </varlistentry>

      <varlistentry>
	<term><literal>--groupid <replaceable>ID</replaceable>
	</literal></term>
	<listitem>
	  <para>
	    Group ID the plugins will run as
	  </para>
	</listitem>
      </varlistentry>      

      <varlistentry>
	<term><literal>--userid <replaceable>ID</replaceable>
	</literal></term>
	<listitem>
	  <para>
	    User ID the plugins will run as
	  </para>
	</listitem>
      </varlistentry>      

      <varlistentry>
	<term><literal>--plugin-dir <replaceable>DIRECTORY</replaceable>
	</literal></term>
	<listitem>
	  <para>
	    Specify a different plugin directory
	  </para>
	</listitem>
      </varlistentry>       
      
      <varlistentry>
	<term><literal>--debug</literal></term>
	<listitem>
	  <para>
	    Debug mode
	  </para>
	</listitem>
      </varlistentry>
      
      <varlistentry>
	<term><literal>-?</literal>, <literal>--help</literal></term>
	<listitem>
	  <para>
	    Gives a help message
	  </para>
	</listitem>
      </varlistentry>
      
      <varlistentry>
	<term><literal>--usage</literal></term>
	<listitem>
	  <para>
	    Gives a short usage message
	  </para>
	</listitem>
      </varlistentry>

      <varlistentry>
	<term><literal>-V</literal>, <literal>--version</literal></term>
	<listitem>
	  <para>
	    Prints the program version
	  </para>
	</listitem>
      </varlistentry>            
    </variablelist>
  </refsect1>
</refentry>
