<!--
	$FML$
-->

<chapter id="qmail">

<title> qmail </title>

<sect1>
	<title> qmail の内部構造について </title>

<screen>
   qmail-inject      qmail-smtpd
          \             /
           \           /
            qmail-queue  ... [qmail-clean]
                 |
                 |
           [qmail-send]
           /              |
          /               |
   [qmail-lspawn]  [qmail-rspawn]
         ||               ||
         ||               ||
    qmail-local     qmail-remote
</screen>

</sect1>


<sect1>
    <title> /var/qmail/users/assign </title>

<sect2>
    <title> Case 1: exact match </title>

<para>
<screen>
=local:user:uid:gid:homedir:dash:ext:
</screen>
は
home-dir/.qmaildashext
で制御される。

<screen>
=elena:fukachan:0:0:/a:-:elena:
</screen>
は /a/.qmail-elena に制御される。
</para>

</sect2>


<sect2>
   <title> Case 1: wildcard match </title>

<para>
<screen>
+loc:user:uid:gid:homedir:dash:pre:

        IS EQUIVALENT TO

=locext:user:uid:gid:homedir:dash:preext:

Example 1: ext == -ctl
   +elena:fukachan:0:0:/a:-:XXX:

	      => 

   =elena-ctl:fukachan:0:0:/a:-:XXX-ctl:

	by /a/.qmail-XXX-ctl


Example 2: really ? 

assume "ext == ctl", so we expect the following behaviour:

   +elena-:fukachan:0:0:/a:-:XXX:
	      => 
   =elena-ctl:fukachan:0:0:/a:-:XXXctl:

   controlled by /a/.qmail-XXXctl

</screen>

</para>

</sect2>

</sect1>

</chapter>
