<!--
   $FML: post.sgml,v 1.1 2003/07/26 04:29:13 fukachan Exp $
   $jaFML: post.sgml,v 1.7 2003/04/15 14:51:46 fukachan Exp $
-->

<sect1 id="usage.post">
	<title>
	post article
	</title>

<para>
Send the mail to elena@fml.org.
MTA (on e.g. ahodori.fml.org) receives the mail and 
finally kicks off
/usr/local/libexec/fml/distribute command.
</para>

<para>
distribute recieves the message from STDIN, rewrites the header, save
it in the spool directory and pass it back to MTA for delivery.
</para>


<sect2>
	<title>
	process of distribution
	</title>

<para>
add a tag to subject, update the article sequence number.
<screen>
Example:

Subject: [elena:00100] teddy bear is cute.
</screen>
(no tag by default).
</para>

<para>
save article (as a text file).
</para>

<para>
create a HTML version of the article under ~fml/public_html/ directory.
</para>

<para>
update database on thread.
</para>

</sect2>


<sect2>
	<title>
	variables to control the article.
	</title>

<warning>
<para>
not yet written.
</para>
</warning>

</sect2>


<sect2>
	<title>
	Boot Sequence
	</title>

<para>
<link linkend="bootloader">
fml boot loader
</link>
boots off in this way.
</para>

<para>
/usr/local/libexec/fml/distribute is symlink-ed to
/usr/local/libexec/fml/loader. These files are same.
</para>

<para>
/usr/local/libexec/fml/loader reads /usr/local/etc/fml/main.cf
firstly. $fml_vesrion such as "current-20010501" is defined
 in the main.cf. &fml8; resolves $fml_version from it and determines the
library path as /usr/local/lib/fml/current-20010501/.  &fml8; loads
perl modules under it.
</para>

<para>
&fml8; sets up @INC properly, fml loader loads FML::Process::Switch
module and check $0 (process name).  fml knows the process role from
$0.  In this case of distribute, fml loads FML::Process::Distribute
module, switch itself to it and processes distribution.
</para>

</sect2>


</sect1>
