diff options
| author | fukachan <fukachan> | 2003-07-24 15:37:33 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2003-07-24 15:37:33 +0000 |
| commit | 071445b25b9522ae289f4b96f3fb34e4caafeace (patch) | |
| tree | 128a12f1cb98746681f805001d5db76ac5415a82 /fml/doc | |
| parent | 7836dc5e837d4902eea5c741669950c058ba86d2 (diff) | |
| download | fml8-071445b25b9522ae289f4b96f3fb34e4caafeace.tar.gz fml8-071445b25b9522ae289f4b96f3fb34e4caafeace.tar.bz2 fml8-071445b25b9522ae289f4b96f3fb34e4caafeace.zip | |
translation. (partly submitted, phase 1)
Diffstat (limited to 'fml/doc')
28 files changed, 2403 insertions, 0 deletions
diff --git a/fml/doc/en/Makefile.template b/fml/doc/en/Makefile.template new file mode 100644 index 00000000..4675ba19 --- /dev/null +++ b/fml/doc/en/Makefile.template @@ -0,0 +1,70 @@ +# +# $FML: Makefile.template,v 1.5 2001/06/05 13:28:44 fukachan Exp $ +# + +TMP_DIR = /tmp/sgmltools + +# targets +SOURCE = book +BOOK = tech +BOOK_ID = tips +TARGET_HTML_DIR = ../../../../Documentation/en/$(BOOK) +TARGET_TEXT_DIR = ../../../../Documentation/en/text + +# programs (except for /bin/*) +UNIQ = uniq +PERL = perl +FIND = find +GREP = grep +CVS = cvs +ENV = env +EXPORTER = rsync -a +SGML_DIR = ../../share/sgml +SGML_CATALOG_FILES = ../../share/sgml/catalog +JADE_OPTS = -v -c $(SGML_DIR)/catalog +FML_DSSSL = -d $(SGML_DIR)/fml.dsl +HTMLify = sgmltools -v -d -j "$(JADE_OPTS) $(FML_DSSSL)" +TEXTify = sgmltools -v -d -j "$(JADE_OPTS)" +FIX_CHARSET = ../utils/bin/fix_charset.pl + +ENV_VARS = TMPDIR=$(TMP_DIR) SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) COLS=72 + + +### +### RULES +### + +all: export + +html: + $(ENV) $(ENV_VARS) $(HTMLify) -b html $(SOURCE).sgml 2>&1 | $(UNIQ) + @ $(PERL) -i.bak $(FIX_CHARSET) $(SOURCE)/$(BOOK_ID).html + @ rm -f $(SOURCE)/@*/*.html.bak + +txt: + $(ENV) $(ENV_VARS) $(TEXTify) -b txt $(SOURCE).sgml 2>&1 | $(UNIQ) + +lynx: + $(ENV) $(ENV_VARS) $(TEXTify) -b lynx $(SOURCE).sgml 2>&1 | $(UNIQ) + +ps: + $(ENV) $(ENV_VARS) $(TEXTify) -b ps $(SOURCE).sgml 2>&1 | $(UNIQ) + +clean: + $(FIND) . -type f -print |$(GREP) '~' |$(PERL) -nple unlink + rm -f book.txt + rm -fr $(SOURCE) + +export: _init html lynx + $(EXPORTER) $(SOURCE)/ $(TARGET_HTML_DIR)/ + @ rsync -a ../../en/figures/*.gif $(TARGET_HTML_DIR)/ + @ cp book.txt $(TARGET_TEXT_DIR)/$(BOOK).txt + chmod 755 $(TARGET_HTML_DIR) + +scan: + @ $(CVS) -n update 2>&1 |$(GREP) -v : || echo '' + +_init: + test -d $(TARGET_HTML_DIR) || mkdir $(TARGET_HTML_DIR) + test -d $(TARGET_TEXT_DIR) || mkdir $(TARGET_TEXT_DIR) + test -d $(TMP_DIR) || mkdir $(TMP_DIR) diff --git a/fml/doc/en/tutorial/.cvsignore b/fml/doc/en/tutorial/.cvsignore new file mode 100644 index 00000000..87e2eb7d --- /dev/null +++ b/fml/doc/en/tutorial/.cvsignore @@ -0,0 +1,4 @@ +fml-devel.fot +fml-devel +book +book.txt diff --git a/fml/doc/en/tutorial/.fix_charset.pl b/fml/doc/en/tutorial/.fix_charset.pl new file mode 100755 index 00000000..664c5fb9 --- /dev/null +++ b/fml/doc/en/tutorial/.fix_charset.pl @@ -0,0 +1,19 @@ +#!/usr/local/bin/perl +# +# $FML$ +# $jaFML: .fix_charset.pl,v 1.1 2001/04/23 17:15:52 fukachan Exp $ +# + +use strict; + +my $meta = q# +<META http-equiv="Content-Type" + content="text/html; charset=EUC-JP"> +#; + +while (<>) { + s/<META/${meta}$&/; + print; +} + +exit 0; diff --git a/fml/doc/en/tutorial/00_README b/fml/doc/en/tutorial/00_README new file mode 100644 index 00000000..bc472967 --- /dev/null +++ b/fml/doc/en/tutorial/00_README @@ -0,0 +1,9 @@ +file formats in this directory is SGML (Standard Generalized Markup +Language). + +You can compile it to html format by sgmltools and openjade. + + + + Ken'ichi Fukamachi + fukachan@fml.org diff --git a/fml/doc/en/tutorial/@faq_template b/fml/doc/en/tutorial/@faq_template new file mode 100644 index 00000000..bc9c59a8 --- /dev/null +++ b/fml/doc/en/tutorial/@faq_template @@ -0,0 +1,15 @@ +<qandaset> +<qandaentry> +<question> + <para> + + </para> +</question> + +<answer> + <para> + + </para> +</answer> +</qandaentry> +</qandaset> diff --git a/fml/doc/en/tutorial/@recipe_template b/fml/doc/en/tutorial/@recipe_template new file mode 100644 index 00000000..76b0d2b7 --- /dev/null +++ b/fml/doc/en/tutorial/@recipe_template @@ -0,0 +1,25 @@ +<!-- +# $FML$ + $jaFML: @recipe_template,v 1.1 2003/01/07 11:39:13 fukachan Exp $ +--> + + +<qandaentry> + +<question> +<para> + +</para> +</question> + +<answer> +<para> + +<screen> + +</screen> + +</para> +</answer> + +</qandaentry> diff --git a/fml/doc/en/tutorial/@sect1_template b/fml/doc/en/tutorial/@sect1_template new file mode 100644 index 00000000..d6e86662 --- /dev/null +++ b/fml/doc/en/tutorial/@sect1_template @@ -0,0 +1,11 @@ +<sect1> + <title> + </title> + +<para> +</para> + +<para> +</para> + +</sect1> diff --git a/fml/doc/en/tutorial/Makefile b/fml/doc/en/tutorial/Makefile new file mode 100644 index 00000000..ccd0e990 --- /dev/null +++ b/fml/doc/en/tutorial/Makefile @@ -0,0 +1,41 @@ +# +# $FML$ +# $jaFML: Makefile,v 1.11 2001/05/01 09:15:21 fukachan Exp $ +# + +# targets +TARGET = book +TARGET_DIR = ../../../../Documentation/en/tutorial +ID = techtips.html + +### +### CONFIGURATIONS +### + +SOURCE = book +BOOK = tutorial +BOOK_ID = index +TARGET_DIR = ../../../../Documentation/en/$(BOOK) + + +### +### RULES +### + +_ARGV = SOURCE=$(SOURCE) BOOK=$(BOOK) BOOK_ID=$(BOOK_ID) +_MAKE = $(MAKE) -f ../Makefile.template $(_ARGV) + + +all: export + +html: + @ $(_MAKE) html + +clean: + @ $(_MAKE) clean + +export: + @ $(_MAKE) export + +scan: + @ $(_MAKE) scan diff --git a/fml/doc/en/tutorial/Makefile.local b/fml/doc/en/tutorial/Makefile.local new file mode 100644 index 00000000..e45bfb9c --- /dev/null +++ b/fml/doc/en/tutorial/Makefile.local @@ -0,0 +1,43 @@ +# +# $FML$ +# $jaFML: Makefile.local,v 1.5 2003/06/20 22:03:11 fukachan Exp $ +# + +SHOW_CONFIG = ../../../utils/bin/show_config.pl --sgml +PROG_LIST = ../../../utils/bin/varlist.pl --sgml +PROG_CLASS = ../../../utils/bin/varclass.pl --sgml +SOURCE = ../../../etc/default_config.cf.en.in + +# destination +VARLIST = variables/list.sgml +VARCLASS = variables/class.sgml +SGML_FILTER_RULES = variables/filter.rules.sgml +SGML_FILTER_SIZE = variables/filter.size.sgml + + +all: $(VARLIST) $(VARCLASS) $(SGML_FILTER_RULES) $(SGML_FILTER_SIZE) + +$(VARLIST): $(SOURCE) + $(PROG_LIST) $(SOURCE) > $(VARLIST).new + mv $(VARLIST).new $(VARLIST) + +$(VARCLASS): $(SOURCE) + $(PROG_CLASS) $(SOURCE) > $(VARCLASS).new + mv $(VARCLASS).new $(VARCLASS) + +install: install_image + +install_image: ../../en/figures/command.dataflow.gif + +../../en/figures/command.dataflow.gif: command/states.gif + cp command/states.gif ../../en/figures/command.dataflow.gif + +$(SGML_FILTER_RULES): $(SOURCE) + $(SHOW_CONFIG) --type filter_rules $(SOURCE) \ + > $(SGML_FILTER_RULES).new + mv $(SGML_FILTER_RULES).new $(SGML_FILTER_RULES) + +$(SGML_FILTER_SIZE): $(SOURCE) + $(SHOW_CONFIG) --type filter_size $(SOURCE) \ + > $(SGML_FILTER_SIZE).new + mv $(SGML_FILTER_SIZE).new $(SGML_FILTER_SIZE) diff --git a/fml/doc/en/tutorial/book.sgml b/fml/doc/en/tutorial/book.sgml new file mode 100644 index 00000000..641adc74 --- /dev/null +++ b/fml/doc/en/tutorial/book.sgml @@ -0,0 +1,210 @@ +<!-- +This is an sgml using DocBook dtd. Use sgmltools version 2.0.x or above +to generate various output formats. + +# $FML$ +$jaFML: book.sgml,v 1.58 2003/05/31 08:51:07 fukachan Exp $ +--> + +<!doctype book public "-//FML//DTD DocBook V3.1-Based Extension//EN" [ + <!entity % include SYSTEM "include/chapters.ent"> %include; +]> + +<book> + + &bookinfo; + + &preface; + + <toc></toc> + + <part> + <title> fml fundamental usage </title> + <partintro> + <para> + This part describes brief guide for beginners. + </para> + <para> + See &www.fml.org; and other sites for more details on + the mailing list. + </para> + </partintro> + + <!-- chapters ... --> + &chapter.overview.ml; + &chapter.overview.fml; + </part> + + + <part> + <title> fml: how to set up ML.</title> + <partintro> + <para> + topics driven in this part. + </para> + </partintro> + + &chapter.download; + + <!-- unix --> + &chapter.install.fml.unix; + &chapter.setup.newml; + + <!-- 2000/nt --> + &chapter.install.fml.nt; + + <!-- misc around installation/setup --> + &chapter.upgrade; + + <!-- CGI --> + &chapter.setup.cgi; + + <!-- test --> + &chapter.setup.test; + </part> + + + <part> + <title> fml: how to customise </title> + <partintro> + <para> + topics driven in this part. + </para> + </partintro> + + &chapter.usage.user; + &chapter.usage.onhost; + &chapter.config; + &chapter.filename; <!-- appropriate here ? --> + + <!-- customize --> + &chapter.customize.mlstyle; + &chapter.customize.header; + &chapter.customize.command; + &chapter.customize.filter; + + <!-- thread track system --> + &chapter.threadtrack; + </part> + + + <part> + <title> troubleshooting </title> + <partintro> + <para> + This part describes how to shoot troubles. + </para> + </partintro> + + + &chapter.troubleshoot; + + </part> + + + <part> + <title> fml design </title> + <partintro> + <para> + THis part describes the design policy of fml. + </para> + </partintro> + + &chapter.design; + &chapter.programingstyle; + </part> + + + <part> + <title> fml internals </title> + <partintro> + <para> + This part describles the fml internals for developers. + </para> + </partintro> + + <!-- boot --> + &chapter.bootloader; + &chapter.config.cf; + + <!-- how to write a new program --> + &chapter.program.create; + + <!-- delivery and command processing --> + &chapter.delivery; + &chapter.digest; + &chapter.message; + &chapter.filter; + <!-- &chapter.replybyfml; --> + + <!-- user access control --> + &chapter.userctl; + + <!-- command --> + &chapter.command; + + <!-- CGI --> + &chapter.internal.cgi; + + <!-- directory --> + &chapter.directory; + + <!-- security --> + &chapter.restriction; + &chapter.credential; + + <!-- hook --> + &chapter.hook; + + <!-- virtual domains --> + &chapter.virtual; + + <!-- misc --> + &chapter.io.abstraction; + &chapter.lock; + &chapter.db.modules; + &chapter.dbms; + </part> + + + <part> + <title> modules </title> + <partintro> + <para> + This part descripbes how to use most important modules. + </para> + </partintro> + + &chapter.module.io.adapter; + &chapter.module.mail.message; + &chapter.module.nl; + &chapter.module.encode; + &chapter.module.create; + </part> + + + <!-- + *************** appendixes hereafter ************** + --> + <part> + <title> Apendixes </title> + + &chapter.glossary; + +<!-- + + &chapter.cvstree; + &chapter.docbook; + &chapter.inet6; + + <!-- thread track --> + &chapter.threadtrack.tools; + +--> + + <!-- internals --> + &chapter.struct; + </part> + + +</book> diff --git a/fml/doc/en/tutorial/command/chapter.sgml b/fml/doc/en/tutorial/command/chapter.sgml new file mode 100644 index 00000000..eabf70c6 --- /dev/null +++ b/fml/doc/en/tutorial/command/chapter.sgml @@ -0,0 +1,22 @@ +<!-- +# $FML$ + $jaFML: chapter.sgml,v 1.7 2002/12/25 11:50:42 fukachan Exp $ +--> + +<chapter> + <title> + command (command mail, CUI, GUI) + </title> + + +<!-- module usage, FML::Command::* modules --> +§.command.module; + +§.command.dataflow; + +§.command.extension; + +§.command.internal; + + +</chapter> diff --git a/fml/doc/en/tutorial/command/dataflow.sgml b/fml/doc/en/tutorial/command/dataflow.sgml new file mode 100644 index 00000000..2fb765ff --- /dev/null +++ b/fml/doc/en/tutorial/command/dataflow.sgml @@ -0,0 +1,15 @@ +<!-- +# $FML$ + $jaFML: dataflow.sgml,v 1.1 2002/12/25 11:50:42 fukachan Exp $ +--> + + +<sect1 id="fml.command.dataflow"> + <title> + data flow of command request processing + </title> + + +<graphic entityref="image.command.dataflow"></graphic> + +</sect1> diff --git a/fml/doc/en/tutorial/command/extension.sgml b/fml/doc/en/tutorial/command/extension.sgml new file mode 100644 index 00000000..bf1cf0a7 --- /dev/null +++ b/fml/doc/en/tutorial/command/extension.sgml @@ -0,0 +1,164 @@ +<!-- + $FML$ + $jaFML: extension.sgml,v 1.10 2003/04/15 14:51:36 fukachan Exp $ +--> + + +<sect1 id="fml.command.hack.commandmail"> + <title> + command extensoin: command mail + </title> + + +<warning> +<para> +To make a new command usable for all ML's on this host, +put the module you wrote at +<screen> +/usr/local/lib/fml/site_local/ +</screen> + +If you permit the command is used only for the specifiec ML +(e.g. elena ML), put it at the ML local library path +<screen> +/var/spool/ml/elena/local/lib/ +</screen> +. +</para> + +<para> +In this section, we consider the former case. +In both cases, the module codes are same. +</para> +</warning> + + +<sect2> + <title> + create a new user command + </title> + +<para> +Consider to make a new user command "uja". +Pick up a command at FML::Command, cut and paste it. +Please put it at +<screen> +/usr/local/lib/fml/site_local/FML/Command/User/uja.pm +</screen> +Edit site_default_config.cf to add it into $commands_for_user +to permit the user of "uja" command. +<screen> +commands_for_user += uja +</screen> +</para> + +</sect2> + + +<sect2> + <title> + create a new admin command "admin uja" + </title> + +<para> +In the same way describe above, hack the module!:) +but the location differs. +Put it at the FML::Command::Admin:: class. +<screen> +/usr/local/lib/fml/site_local/FML/Command/Admin/uja.pm +</screen> +Edit site_default_config.cf to add it into $commands_for_privileged_user +to permit the use of "admin uja" command. +<screen> +commands_for_privileged_user += uja +</screen> +</para> + +</sect2> + +</sect1> + + +<sect1 id="fml.command.hack.makefml"> + <title> + CUI command extension: makefml/fml + </title> + +<warning> +<para> +To make a new command usable for all ML's on this host, +put the module you wrote at +<screen> +/usr/local/lib/fml/site_local/ +</screen> + +If you permit the command is used only for the specifiec ML +(e.g. elena ML), put it at the ML local library path +<screen> +/var/spool/ml/elena/local/lib/ +</screen> +. +</para> + +<para> +In this section, we consider the former case. +In both cases, the module codes are same. +</para> +</warning> + +<para> +Create a module "uja" and put it at +<screen> +/usr/local/lib/fml/site_local/FML/Command/Admin/uja.pm +</screen> +No editing of .cf files. +The existence of module file enables the command automatically +in the case CUI since the use of CUI implies administrator use. +</para> + +</sect1> + + +<sect1 id="fml.command.hack.cgi"> + <title> + GUI command extension: CGI + </title> + + +<warning> +<para> +To make a new command usable for all ML's on this host, +put the module you wrote at +<screen> +/usr/local/lib/fml/site_local/ +</screen> + +If you permit the command is used only for the specifiec ML +(e.g. elena ML), put it at the ML local library path +<screen> +/var/spool/ml/elena/local/lib/ +</screen> +. +</para> + +<para> +In this section, we consider the former case. +In both cases, the module codes are same. +</para> +</warning> + + +<para> +craete a module "uja" and put it at +<screen> +/usr/local/lib/fml/site_local/FML/Command/Admin/uja.pm +</screen> +Edit site_default_config.cf to add it into $commands_for_admin_cgi +to permit the use of "uja" command. +<screen> +commands_for_admin_cgi += uja +</screen> +</para> + + +</sect1> diff --git a/fml/doc/en/tutorial/command/module.sgml b/fml/doc/en/tutorial/command/module.sgml new file mode 100644 index 00000000..e2738b3e --- /dev/null +++ b/fml/doc/en/tutorial/command/module.sgml @@ -0,0 +1,95 @@ +<!-- + $FML$ + $jaFML: module.sgml,v 1.4 2003/04/15 14:51:36 fukachan Exp $ +--> + + +<sect1 id="fml.command.module.hierarchy"> + <title> + modules for commands + </title> + +<para> +In &fmldevel;, all command modules are shared among command mail, +CUI(makefml, fml) and GUI. +Commands are caregorized into user and administrative ones by the +priviledge. +</para> + +<para> +FML::Command:: consists of the following classes: +<screen> +FML::Command entrance into FML::Command +FML::Command::User command for usual ML users. +FML::Command::Admin command for administrators. +</screen> +For example, a user command in a command mail kicks off +FML::Command firstly, after some steps, +calls FML::Command::User::$command where $command is the specified +command name. +</para> + + +<sect2> + <title> + usre command in command mail + </title> + +<para> +FML::Process::Command call FML::Command::User::$command for $command +via FML::Command. +</para> + +<para> + +Finally, some module calls FML::Command::Admin::$command for real work even if it is +a user command. +For example, +FML::Command::Admin::subscribe works for subscription. +In this case, +FML::Command::User::subscribe module is a wrapper or an entrance for +confirmation before the real subscription work. +</para> +</sect2> + +<sect2> + <title> + admin command (administrative command in command mail) + </title> + +<para> +call FML::Command::Admin::$command for $command via FML::Command +via FML::Process::Command. +</para> + +</sect2> + + +<sect2> + <title> + CUI (makefml/fml) + </title> + +<para> +FML::Process::Configure calls +FML::Command::Admin::$command via FML::Command. +</para> + +</sect2> + + +<sect2> + <title> + GUI (CGI) + </title> + + +<para> +FML::Process::CGI calls +FML::Command::Admin::$command via FML::Command. +</para> + +</sect2> + + +</sect1> diff --git a/fml/doc/en/tutorial/glossary.sgml b/fml/doc/en/tutorial/glossary.sgml new file mode 100644 index 00000000..ba707d8c --- /dev/null +++ b/fml/doc/en/tutorial/glossary.sgml @@ -0,0 +1,228 @@ +<!-- +# $FML$ + $jaFML: glossary.sgml,v 1.5 2003/04/15 14:51:34 fukachan Exp $ +--> + +<glossary id="glossary"> + <title> + Glossary (function and variable names) + </title> + + + <glossentry> + <glossterm> fml 4 </glossterm> + <glossdef> + <para> + &fml4; series + </para> + </glossdef> + + </glossentry> + + + <glossentry> + <glossterm> fml-devel </glossterm> + <glossdef> + <para> + current development version on the way to &fmldevel; in the future. + </para> + + <para> + We call it fml 8, too. + </para> + </glossdef> + + + </glossentry> + + + <glossentry> + <glossterm> curproc </glossterm> + <glossdef> + <para> + abbrebiation of "current process". + </para> + + <para> + Typical abbrebiation form used in UNIX kernel. + </para> + + </glossdef> + + </glossentry> + + + <glossentry> + <glossterm> PCB </glossterm> + <glossdef> + <para> + Process Control Block. + </para> + + <para> + Typical abbrebiation form used in UNIX kernel. + </para> + + </glossdef> + + </glossentry> + + + <glossentry> + <glossterm> config </glossterm> + <glossdef> + <para> + configuration. + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> conf </glossterm> + <glossdef> + <para> + configuration. + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> arg / args </glossterm> + <glossdef> + <para> + argument. + </para> + </glossdef> + + + </glossentry> + + + <glossentry> + <glossterm> fh </glossterm> + <glossdef> + <para> + file handle. + </para> + </glossdef> + + + </glossentry> + + + <glossentry> + <glossterm> dh </glossterm> + <glossdef> + <para> + directory handle. + </para> + </glossdef> + + + </glossentry> + + + <glossentry> + <glossterm> fp </glossterm> + <glossdef> + <para> + function pointer == code reference for perl 5. + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> _foobar </glossterm> + <glossdef> + <para> + keyword begininng with _ is used for internal function or variable. + </para> + + <para> + private in other words. + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> rfoobar </glossterm> + <glossdef> + <para> + The first "r" implies "reference". + This called hangalian form but we use it little in fml8. + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> STR </glossterm> + <glossdef> + <para> + string. + </para> + </glossdef> + + </glossentry> + + + <glossentry> + <glossterm> Japanese character set name </glossterm> + <glossdef> + <para> + JIS SJIS EUC ... + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> 2 </glossterm> + <glossdef> + <para> + the same pronounciation as "to". + </para> + <para> + STR2EUC (== STRing to EUC) +<screen> +use String qw(STR2EUC); +$euc_string = STR2EUC($string); +</screen> + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> 4 </glossterm> + <glossdef> + <para> + the same pronounciation as "for". + </para> + </glossdef> + </glossentry> + + + <glossentry> + <glossterm> command mail </glossterm> + <glossdef> + <para> + a mail which message body includes commands for fml. + </para> + + <para> + By sending the command mail to some address, + a user can make fml8 action something, such as + subscribe, file retrieve, unsubscribe et.al, + The address is typically $ml-ctl@$domain. + </para> + + </glossdef> + </glossentry> + + +</glossary> diff --git a/fml/doc/en/tutorial/include/bookinfo.sgml b/fml/doc/en/tutorial/include/bookinfo.sgml new file mode 100644 index 00000000..73d93abd --- /dev/null +++ b/fml/doc/en/tutorial/include/bookinfo.sgml @@ -0,0 +1,69 @@ +<!-- +# $FML$ + $jaFML: bookinfo.sgml,v 1.11 2003/02/11 13:54:11 fukachan Exp $ +--> + +<bookinfo> + <bookbiblio> + <title> + fml 8 tutorial + </title> + + <author> + <honorific> Dr </honorific> + <firstname> Ken'ichi </firstname> + <surname> Fukamachi </surname> + <affiliation> + <orgname>FML.ORG</orgname> + <address> + <email> + <ulink url="mailto:fukachan@fml.org"> + fukachan@fml.org + </ulink> + </email> + </address> + </affiliation> + </author> + + <copyright> + <year> 2001,2002,2003 </year> + <holder> Ken'ichi Fukamachi </holder> + </copyright> + + </bookbiblio> + + <legalnotice> + <para> + All rights reserved. This program is free software; you can + redistribute it and/or modify it under the same terms as Perl itself. + </para> + + + <para> + The current TODO is seen at + <ulink url="../../../fml/doc/ja/todo/STATUS.html"> + http://www.fml.org/software/fml-devel/fml/doc/ja/todo/STATUS.html + </ulink> + (Japanese only now, sorry). + </para> + + <para> + It is verified that &fml8; works on the following environemnt now. +<screen> + perl 5.6.1 on NetBSD 1.5.x (1.5 stable) + perl 5.6.1 on NetBSD 1.6 + perl 5.00503 on FreeBSD 4.3 STABLE + perl ? on FreeBSD 4.6 RELEASE + perl 5.00503 on FreeBSD 4.7 RELEASE-p3 + perl 5.00503 on FreeBSD 4.6.2 RELEASE + perl 5.6.1 on Redhat Linux 7.2 (postfix) + perl 5.00503 on Redhat Linux 6.2 (sendmail8.11.6) + postfix + perl 5.6.1 on Solaris 7 + postfix 2.0.3 + perl 5.6.1 on Solaris 9 +</screen> + </para> + + </legalnotice> + + +</bookinfo> diff --git a/fml/doc/en/tutorial/include/chapters.ent b/fml/doc/en/tutorial/include/chapters.ent new file mode 100644 index 00000000..5f63e97d --- /dev/null +++ b/fml/doc/en/tutorial/include/chapters.ent @@ -0,0 +1,199 @@ +<!-- + $FML$ + $jaFML: chapters.ent,v 1.75 2003/06/20 22:03:12 fukachan Exp $ +--> + +<!entity versin "1.1"> + +<!-- pointer --> +<!entity fmlbible "fml bible(oreilly japan)"> +<!entity www.fml.org "http://www.fml.org/software/fml/"> +<!entity fml4 "fml 4"> +<!entity fmldevel "fml 8"> + + +<!-- images --> +<!entity image.architecture SYSTEM "architecture.gif" ndata gif> +<!entity image.command.dataflow SYSTEM "command.dataflow.gif" ndata gif> +<!entity image.ml SYSTEM "ml.gif" ndata gif> +<!entity image.cgi.top SYSTEM "cgi.top.gif" ndata gif> +<!entity image.cgi.newml SYSTEM "cgi.newml.gif" ndata gif> +<!entity image.cgi.useradd SYSTEM "cgi.useradd.gif" ndata gif> + + +<!-- meta --> +<!entity bookinfo SYSTEM "include/bookinfo.sgml"> +<!entity preface SYSTEM "preface.sgml"> +<!entity sect.terms SYSTEM "terms.sgml"> + + +<!-- part I: introduction .. test --> +<!entity chapter.overview.fml SYSTEM "overview/fml.sgml"> +<!entity chapter.overview.ml SYSTEM "overview/ml.sgml"> + + +<!-- part II: set up --> +<!entity chapter.download SYSTEM "install/download.sgml"> +<!entity chapter.install.fml.unix SYSTEM "install/fml_on_unix.sgml"> +<!entity chapter.install.fml.nt SYSTEM "install/fml_on_nt.sgml"> +<!entity sect.install.postfix SYSTEM "install/postfix.sgml"> +<!entity sect.install.qmail SYSTEM "install/qmail.sgml"> +<!entity chapter.upgrade SYSTEM "install/upgrade.sgml"> + +<!entity chapter.setup.newml SYSTEM "setup/newml.sgml"> +<!entity sect.setup.postfix SYSTEM "setup/postfix.sgml"> +<!entity sect.setup.qmail SYSTEM "setup/qmail.sgml"> +<!entity sect.setup.config.cf SYSTEM "setup/config.cf.sgml"> +<!entity chapter.setup.cgi SYSTEM "setup/cgi.sgml"> +<!entity chapter.setup.test SYSTEM "setup/test.sgml"> + + +<!-- part III: customize --> + +<!entity chapter.config SYSTEM "customize/chapter.config.sgml"> +<!entity chapter.usage.user SYSTEM "usage/chapter.user.sgml"> +<!entity chapter.usage.onhost SYSTEM "usage/chapter.onhost.sgml"> +<!entity chapter.customize.mlstyle SYSTEM "customize/chapter.ml_style.sgml"> +<!entity chapter.customize.header SYSTEM "customize/chapter.header.sgml"> +<!entity chapter.customize.command SYSTEM "customize/chapter.command.sgml"> + +<!entity sect.config.autoreply SYSTEM "customize/autoreply.sgml"> +<!entity sect.config.command.permit.anyone SYSTEM "customize/command_permit_anyone.sgml"> +<!entity sect.config.command.rejectall SYSTEM "customize/command_rejectall.sgml"> +<!entity sect.config.mailmagazine SYSTEM "customize/mailmagazine.sgml"> +<!entity sect.config.post.permit.anyone SYSTEM "customize/post_permit_anyone.sgml"> + +<!entity sect.config.ml.hier SYSTEM "customize/ml.hier.ml"> + +<!entity sect.customize.casestudies SYSTEM "customize/case_studies.sgml"> + + + +<!entity recipe.header.tag.uppercase SYSTEM "customize/recipe.header.tag.uppercase.sgml"> +<!entity recipe.header.tag.lowercase SYSTEM "customize/recipe.header.tag.lowercase.sgml"> + +<!-- filter --> +<!entity chapter.customize.filter SYSTEM "customize/filter.sgml"> +<!entity recipe.filter.notice SYSTEM "customize/recipe.filter.notice.sgml"> +<!entity chapter.filter SYSTEM "internals/filter.sgml"> +<!entity var.filter.rules SYSTEM "variables/filter.rules.sgml"> +<!entity var.filter.size SYSTEM "variables/filter.size.sgml"> + + +<!entity sect.usage.guide SYSTEM "usage/guide.sgml"> +<!entity sect.usage.subscribe SYSTEM "usage/subscribe.sgml"> +<!entity sect.usage.unsubscribe SYSTEM "usage/unsubscribe.sgml"> +<!entity sect.usage.get SYSTEM "usage/get.sgml"> +<!entity sect.usage.help SYSTEM "usage/help.sgml"> +<!entity sect.usage.post SYSTEM "usage/post.sgml"> +<!entity sect.usage.command SYSTEM "usage/command.sgml"> +<!entity sect.usage.procmail SYSTEM "setup/procmail.sgml"> +<!entity sect.usage.makefml SYSTEM "usage/makefml.sgml"> +<!entity sect.usage.fml SYSTEM "usage/fml.sgml"> +<!entity sect.usage.fmladdr SYSTEM "usage/fmladdr.sgml"> +<!entity sect.usage.fmlalias SYSTEM "usage/fmlalias.sgml"> +<!entity sect.usage.fmlconf SYSTEM "usage/fmlconf.sgml"> +<!entity sect.usage.fmldoc SYSTEM "usage/fmldoc.sgml"> +<!entity sect.usage.fmlthread SYSTEM "usage/fmlthread.sgml"> +<!entity sect.usage.fmlhtmlify SYSTEM "usage/fmlhtmlify.sgml"> +<!entity sect.usage.fmlsummary SYSTEM "usage/fmlsummary.sgml"> + + +<!-- command --> +<!entity chapter.command SYSTEM "command/chapter.sgml"> +<!entity sect.command.dataflow SYSTEM "command/dataflow.sgml"> +<!entity sect.command.internal SYSTEM "command/internal.sgml"> +<!entity sect.command.extension SYSTEM "command/extension.sgml"> +<!entity sect.command.module SYSTEM "command/module.sgml"> + + +<!-- ? ;-) --> +<!entity chapter.directory SYSTEM "internals/directory.sgml"> +<!entity chapter.db SYSTEM "internals/db.sgml"> +<!entity chapter.db.modules SYSTEM "internals/db_modules.sgml"> +<!entity chapter.dbms SYSTEM "internals/dbms.sgml"> +<!entity chapter.hook SYSTEM "internals/hook.sgml"> +<!entity chapter.policy SYSTEM "policy.sgml"> + +<!entity chapter.filename SYSTEM "internals/filename.sgml"> + +<!entity chapter.userctl SYSTEM "internals/userctl.sgml"> + + + +<!-- delivery --> +<!entity chapter.delivery SYSTEM "delivery/chapter.sgml"> +<!entity sect.mailqueue SYSTEM "delivery/queue.sgml"> + +<!-- digest --> +<!entity chapter.digest SYSTEM "digest/chapter.sgml"> + + +<!entity recipe.delivery.forward SYSTEM "delivery/recipe.forward.sgml"> + + +<!-- internals --> +<!entity chapter.bootloader SYSTEM "internals/bootloader.sgml"> +<!entity sect.main.cf SYSTEM "internals/main.cf.sgml"> +<!entity chapter.internal.cgi SYSTEM "internals/cgi.sgml"> +<!entity chapter.programingstyle SYSTEM "internals/style.sgml"> +<!entity chapter.design SYSTEM "internals/design.sgml"> +<!entity chapter.config.cf SYSTEM "internals/config.cf.sgml"> +<!entity chapter.restriction SYSTEM "internals/restriction.sgml"> +<!entity chapter.credential SYSTEM "internals/credential.sgml"> +<!entity chapter.lock SYSTEM "internals/lock.sgml"> +<!entity chapter.io.abstraction SYSTEM "internals/io_abstraction.sgml"> + +<!entity chapter.virtual SYSTEM "virtual/chapter.sgml"> + +<!-- variable list --> +<!entity var.table.list.variables SYSTEM "variables/list.sgml"> +<!entity var.table.class.variables SYSTEM "variables/class.sgml"> + +<!-- --> +<!entity chapter.struct SYSTEM "internals/struct.sgml"> +<!entity struct.curproc SYSTEM "internals/CURPROC.sgml"> + + + +<!-- message --> +<!entity chapter.message SYSTEM "message/chapter.sgml"> +<!entity sect.message.nl SYSTEM "message/language.sgml"> +<!entity sect.message.discuss SYSTEM "message/discussion.sgml"> + + +<!-- development --> +<!entity chapter.cvstree SYSTEM "devel/cvstree.sgml"> +<!entity chapter.cvstags SYSTEM "devel/cvstags.sgml"> +<!entity chapter.docbook SYSTEM "devel/docbook.sgml"> +<!entity chapter.inet6 SYSTEM "devel/inet6.sgml"> +<!entity chapter.program.create SYSTEM "devel/create_program.sgml"> + + +<!-- misc --> +<!entity chapter.threadtrack SYSTEM "threadtrack/chapter.sgml"> +<!entity sect.threadtrack.states SYSTEM "threadtrack/states.sgml"> +<!entity sect.threadtrack.model SYSTEM "threadtrack/model.sgml"> +<!entity sect.threadtrack.db SYSTEM "threadtrack/db.sgml"> +<!entity chapter.threadtrack.tools SYSTEM "threadtrack/tools.sgml"> + + +<!-- Appendix --> +<!entity chapter.glossary SYSTEM "glossary.sgml"> + + +<!-- modules --> +<!entity chapter.module.io.adapter SYSTEM "module/IO.sgml"> +<!entity chapter.module.mail.message SYSTEM "module/Message.sgml"> +<!entity chapter.module.nl SYSTEM "module/nativelanguage.sgml"> +<!entity chapter.module.create SYSTEM "module/create.sgml"> +<!entity chapter.module.encode SYSTEM "module/encode.sgml"> + + + +<!-- trouble shoot --> +<!entity chapter.troubleshoot SYSTEM "troubleshoot/chapter.sgml"> + +<!entity recipe.version SYSTEM "troubleshoot/recipe.version.sgml"> +<!entity recipe.listup.addresses SYSTEM "troubleshoot/recipe.listup.addresses.sgml"> +<!entity recipe.listup.aliases SYSTEM "troubleshoot/recipe.listup.aliases.sgml"> diff --git a/fml/doc/en/tutorial/include/terms.sgml b/fml/doc/en/tutorial/include/terms.sgml new file mode 100644 index 00000000..7d2380e5 --- /dev/null +++ b/fml/doc/en/tutorial/include/terms.sgml @@ -0,0 +1,35 @@ +<!-- + $FML$ + $jaFML: terms.sgml,v 1.3 2002/07/02 10:39:34 fukachan Exp $ +--> + +<sect1 id="terms"> + +<title> terms in tutorial </title> + +<variablelist> + + <varlistentry> + <term> % </term> + <listitem> + <para> user prompt </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> # </term> + <listitem> + <para> root prompt </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> fml4 </term> + <listitem> + <para> &fml4; series </para> + </listitem> + </varlistentry> + +</variablelist> + +</sect1> diff --git a/fml/doc/en/tutorial/install/download.sgml b/fml/doc/en/tutorial/install/download.sgml new file mode 100644 index 00000000..77b79453 --- /dev/null +++ b/fml/doc/en/tutorial/install/download.sgml @@ -0,0 +1,87 @@ +<!-- +# $FML$ + $jaFML: download.sgml,v 1.2 2002/07/06 14:55:17 fukachan Exp $ +--> + +<chapter id="download"> + <title> + Download &fmldevel; source code. + </title> + + +<!-- ==================================================== --> +<sect1 id="ftp.fml.org"> + <title> + Download via ftp. + </title> + +<para> +You can find &fml8; source at + <ulink url="ftp://ftp.fml.org/pub/fml-devel/"> + ftp://ftp.fml.org/pub/fml-devel/ + </ulink>. +You can get it by ftp. +</para> + +<para> +We build snapshot as a tarball in some interval. +The file name contains date such as YYYYMMDD form. +Please get the latest one. +</para> + +<para> +Also, you can find a daily snapshot at +<ulink url="ftp://ftp.fml.org/pub/fml/daily-snapshots/fml-devel/source/"> +ftp://ftp.fml.org/pub/fml/daily-snapshots/fml-devel/source/ +</ulink>. +This snapshot is auto-build. +So it may not work well. +</para> + +</sect1> + + +<!-- ==================================================== --> +<sect1 id="anoncvs"> + <title> + Access to cvs. + </title> + +<para> +You can find &fmldevel; under /fmlsrc in anoncvs.fml.org. +</para> + +<para> +If you have cvs account of cvs.fml.org, use cvs over ssh. +<screen> +cvs -d cvs.fml.org:/cvsroot co fmlsrc +</screen> +</para> + +</sect1> + + +<!-- ==================================================== --> +<sect1 id="cvsweb"> + <title> + Access to cvs via cvsweb. + </title> + +<para> +<ulink url="http://www.fml.org/cvsweb/fmlsrc/"> +http://www.fml.org/cvsweb/fmlsrc/ +</ulink> +provides the cvs acesss via web interface. +</para> + +<warning> +<para> +It is useful to retrieve the specified version of the file. +Instead, it is not useful to get the whole source. +</para> +</warning> + +</sect1> + + +</chapter> diff --git a/fml/doc/en/tutorial/install/fml_on_nt.sgml b/fml/doc/en/tutorial/install/fml_on_nt.sgml new file mode 100644 index 00000000..249b0cf3 --- /dev/null +++ b/fml/doc/en/tutorial/install/fml_on_nt.sgml @@ -0,0 +1,17 @@ +<!-- + $FML$ + $jaFML: fml_on_nt.sgml,v 1.3 2003/04/15 14:51:39 fukachan Exp $ +--> + +<chapter id="install.fml.nt"> + <title> + &fmldevel; installation on Microsft 2000/NT + </title> + +<warning> +<para> +not yet implemented. +</para> +</warning> + +</chapter> diff --git a/fml/doc/en/tutorial/install/postfix.sgml b/fml/doc/en/tutorial/install/postfix.sgml new file mode 100644 index 00000000..8117b929 --- /dev/null +++ b/fml/doc/en/tutorial/install/postfix.sgml @@ -0,0 +1,76 @@ +<!-- + $FML$ + $jaFML: postfix.sgml,v 1.3 2003/04/15 14:51:39 fukachan Exp $ +--> + +<sect1 id="install.postfix"> + <title> + MTA configuration (postfix) + </title> + + +<sect2> + <title> + default domain (example: fml.org) + </title> + + +<para> +set up /etc/postfix/main.cf like this: +<screen> +allow_mail_to_commands = alias,forward,include + +alias_maps = hash:/etc/mail/aliases + hash:/var/spool/ml/etc/mail/aliases +</screen> +</para> + +<warning> +<para> +Please check that $mydestination contains the default domain (may be +$mydomain). +</para> +</warning> + +</sect2> + + +<sect2> + <title> + virtual domain (example: nuinui.net) + </title> + +<para> +You need to edit both main.cf and virtual_map. +<screen> +allow_mail_to_commands = alias,forward,include + +alias_maps = hash:/etc/mail/aliases + hash:/var/spool/ml/etc/mail/aliases + hash:/var/spool/nuinui.net/etc/mail/aliases + +virtual_maps = hash:/var/spool/nuinui.net/etc/postfix/virtual + +</screen> +/var/spool/nuinui.net/etc/postfix/virtual is updated by makefml +automatically. +</para> + +<warning> + +<para> +$mydestination should contain the default domain (may be $mydomain) +but not virtual domain. Please see postfix document for more details. +</para> + +<para> +When a new virtual domain is added, +add the new aliases file to $alias_maps but do not edit virtual_maps. +</para> + +</warning> + +</sect2> + + +</sect1> diff --git a/fml/doc/en/tutorial/install/qmail.sgml b/fml/doc/en/tutorial/install/qmail.sgml new file mode 100644 index 00000000..0248fee4 --- /dev/null +++ b/fml/doc/en/tutorial/install/qmail.sgml @@ -0,0 +1,70 @@ +<!-- + $FML$ + $jaFML: qmail.sgml,v 1.3 2003/04/15 14:51:39 fukachan Exp $ +--> + +<sect1 id="install.qmail"> + <title> + MTA configuration (qmail) + </title> + +<warning> +<para> +&fmldevel; assumes that qmail configurations is based on +/var/qmail/control/virtualdomains always regardless of the default +domain or not. +</para> +</warning> + +<para> +The template of /var/qmail/control/virtualdomains is created at +/var/spool/ml/etc/qmail by makefml. +</para> + + +<sect2> + <title> + The default domain (example: fml.org) + </title> + +<para> +At +<screen> +/var/qmail/control/virtualdomains +</screen> +specify the following rule +<screen> +fml.org:fml-fml.org +</screen> +. +"makefml newml" can set up ~/.qmail-* automatically. +</para> + +<para> +See +<link linkend="setup.qmail.aliases"> +the section on "makefml newml and qmail" +</link> +for ~/.qmail-* "makefml newml" creates. +</para> + +</sect2> + + +<sect2> + <title> + virtual domain (example: nuinui.net) + </title> + +<para> +For nuinui.net domain, not the default one, specify +<screen> +nuinui.net:fml-nuinui.net +</screen> +at /var/qmail/control/virtualdomains. +</para> + +</sect2> + + +</sect1> diff --git a/fml/doc/en/tutorial/install/upgrade.sgml b/fml/doc/en/tutorial/install/upgrade.sgml new file mode 100644 index 00000000..a608319d --- /dev/null +++ b/fml/doc/en/tutorial/install/upgrade.sgml @@ -0,0 +1,48 @@ +<!-- + $FML$ + $jaFML: upgrade.sgml,v 1.3 2003/04/15 14:51:39 fukachan Exp $ +--> + +<chapter> + <title> + upgrade/downgrade + </title> + +<sect1 id="upgrade"> + <title> + upgrade + </title> + +<para> +<link linkend="install.fml.unix"> +Install +</link> +again. +</para> + +<para> +After &fml8; installation, +rewrite fml_version line in /etc/fml/main.cf to the version installed now. +Just when the file is saved, fml is changed to the new version. +</para> +</sect1> + + +<sect1 id="downgrade"> + <title> + downgrade. + </title> + +<para> +No need to install. Edit /etc/fml/main.cf to back the fml_version to +the previous one. +</para> + +<para> +Just when the file is saved, fml is changed to the new version. +</para> + +</sect1> + + +</chapter> diff --git a/fml/doc/en/tutorial/internals/CURPROC.sgml b/fml/doc/en/tutorial/internals/CURPROC.sgml new file mode 100644 index 00000000..e6fc8f2b --- /dev/null +++ b/fml/doc/en/tutorial/internals/CURPROC.sgml @@ -0,0 +1,65 @@ +<para> +<screen> +__parent_args => HASH { + ARGV => ARRAY + argv => ARRAY + cf_list => ARRAY + fml_version + main_cf => HASH + module_info => HASH + myname + need_ml_name + options => HASH + program_name + } + +__print_style => SCALAR + +article => HASH { + body => Mail::Message + header => FML::Header + message => Mail::Message + } + +config => FML::Config + +credential => FML::Credential + +incoming_message => HASH { + body => Mail::Message + header => FML::Header + message => Mail::Message + } + +main_cf => HASH { + _hints + config_dir + debug + default_command_line_option_config + default_config_cf + default_config_dir + default_domain + default_ml_home_prefix + default_module_config + default_paths_cf + domain_default_config + exec_prefix + executable_prefix + fml_group + fml_owner + fml_version + lib_dir + libexec_dir + local_lib_dir + prefix + prefix_dir + share_dir + virtual_maps + } + +pcb => FML::PCB + +scheduler => FML::Process::Scheduler + +</screen> +</para> diff --git a/fml/doc/en/tutorial/overview/ml.sgml b/fml/doc/en/tutorial/overview/ml.sgml new file mode 100644 index 00000000..45d9e2d6 --- /dev/null +++ b/fml/doc/en/tutorial/overview/ml.sgml @@ -0,0 +1,65 @@ +<!-- + $FML$ + $jaFML: ml.sgml,v 1.3 2003/04/15 14:51:43 fukachan Exp $ +--> + +<chapter id="overview.ml"> + <title> + mailing list ? + </title> + +<sect1 id="overview.email"> + <title> + Email + </title> + +<para> +Email is an electirc version of mail. +</para> + +<para> +One email has the following structure: the former is the header, the +latter is the body. The separator is one null line (empty line). +<screen> +From: rudo@nuinui.net +To: kenken@nuinui.net +Subject: asobo. + +Hi, Kenken. I am Rudo. + +// rudo +</screen> +See RFC822 and RFC2822 for more details of definitions. +</para> + +</sect1> + + + +<sect1 id="overview.mailinglist"> + <title> + mailing list (ML) + </title> + +<para> +Mailing list (ML) is forwarding mechanism of email. +The program to do it is called as an ML driver. +An ML driver receives the email injected via MTA over the network, +copy it and redistributes it to ML members. +</para> + +<sect2 id="overview.mldriver"> + <title> + model of an ML. + </title> + +<para> +<graphic entityref="image.ml"></graphic> +</para> + +</sect2> + +</sect1> + + +</chapter> diff --git a/fml/doc/en/tutorial/terms.sgml b/fml/doc/en/tutorial/terms.sgml new file mode 100644 index 00000000..be5b7925 --- /dev/null +++ b/fml/doc/en/tutorial/terms.sgml @@ -0,0 +1,29 @@ +<!-- +# $FML$ + $jaFML: terms.sgml,v 1.5 2003/04/15 14:51:35 fukachan Exp $ +--> + +<sect1 id="terms"> + <title> + Technical terms in this tutorial + </title> + +<variablelist> + + <varlistentry> + <term> % </term> + <listitem> + <para> prompt of a user on the shell </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> # </term> + <listitem> + <para> prompt of the user root </para> + </listitem> + </varlistentry> + +</variablelist> + +</sect1> diff --git a/fml/doc/en/tutorial/troubleshoot/chapter.sgml b/fml/doc/en/tutorial/troubleshoot/chapter.sgml new file mode 100644 index 00000000..d91c5eed --- /dev/null +++ b/fml/doc/en/tutorial/troubleshoot/chapter.sgml @@ -0,0 +1,25 @@ +<!-- + $FML$ + $jaFML: chapter.sgml,v 1.3 2002/11/09 14:16:19 fukachan Exp $ +--> + + +<chapter id="troubleshoot"> + <title> + troubleshoot + </title> + + +<qandaset> + +&recipe.version; +&recipe.listup.addresses; +&recipe.listup.aliases; + +</qandaset> + + +</chapter> + + + diff --git a/fml/doc/en/tutorial/variables/class.sgml b/fml/doc/en/tutorial/variables/class.sgml new file mode 100644 index 00000000..d9a046a4 --- /dev/null +++ b/fml/doc/en/tutorial/variables/class.sgml @@ -0,0 +1,647 @@ +<para> +<screen> +__exceptional__ { + ? $timezone +} + +admin { + + admin_command { + $admin_command_restrictions + } + + admin_member { + $admin_member_maps + $primary_admin_member_map + } + + admin_member_password { + $admin_member_password_maps + $primary_admin_member_password_map + } + + admin_recipient { + $admin_recipient_maps + $primary_admin_recipient_map + } + + admin_* { + $admin_cgi_base_dir + } +} + +admin_command { + + admin_command { + } +} + +article { + + article_delivery { + $use_article_delivery + } + + article_filter { + $article_filter_functions + $use_article_filter + } + + article_filter_reject_notice { + $article_filter_reject_notice_data_type + ? $article_filter_reject_notice_recipients + $use_article_filter_reject_notice + } + + article_header_filter { + $article_header_filter_rules + $use_article_header_filter + } + + article_header_rewrite { + $article_header_rewrite_rules + $use_article_header_rewrite + } + + article_mime_component_filter { + $article_mime_component_filter_rules + $use_article_mime_component_filter + } + + article_non_mime_filter { + $article_non_mime_filter_rules + $use_article_non_mime_filter + } + + article_size_filter { + $article_size_filter_rules + $use_article_size_filter + } + + article_text_plain_filter { + $article_text_plain_filter_rules + $use_article_text_plain_filter + } + + article_* { + $article_sequence_file + ? $article_subject_tag + } +} + +body { + + body_loop_check { + $body_loop_check_rules + $use_body_loop_check + } + + body_* { + $body_cksum_cache_dir + } +} + +cgi { + + cgi_* { + $cgi_base_dir + ? $cgi_charset + ? $cgi_main_menu_color + $cgi_menu_default_map + ? $cgi_menu_map_list + ? $cgi_navigation_bar_color + } +} + +chaddr_command { + + chaddr_command { + $chaddr_command_auth_type + } +} + +command { + + command_mail { + $command_mail_line_length_limit + $use_command_mail_program + } + + command_mail_filter { + $command_mail_filter_functions + $use_command_mail_filter + } + + command_mail_filter_reject_notice { + $command_mail_filter_reject_notice_data_type + ? $command_mail_filter_reject_notice_recipients + $use_command_mail_filter_reject_notice + } + + command_mail_invalid_command { + $command_mail_invalid_command_limit + } + + command_mail_size_filter { + $command_mail_size_filter_rules + $use_command_mail_size_filter + } + + command_mail_valid_command { + $command_mail_valid_command_limit + } + + command_* { + ? $command_prompt + $command_restrictions + } +} + +confirm_command { + + confirm_command { + ? $confirm_command_prefix + } +} + +default { + + default_* { + ? $default_cgi_charset + ? $default_charset + ? $default_directory_mode + ? $default_file_mode + $default_mail_body_size_limit + $default_mail_header_size_limit + ? $default_message_subject + ? $default_umask + } +} + +digest { + + digest { + $digest_sequence_file + $use_digest_program + } + + digest_header_rewrite { + $digest_header_rewrite_rules + $use_digest_header_rewrite + } + + digest_member { + $digest_member_maps + $primary_digest_member_map + } + + digest_recipient { + $digest_recipient_maps + $primary_digest_recipient_map + } +} + +directory { + + directory_* { + ? $directory_private_mode + ? $directory_public_mode + } +} + +distribute { + + distribute { + $use_distribute_program + } +} + +domain { + + domain_* { + $domain_config_base_dir + $domain_exim_config_dir + $domain_mail_config_dir + $domain_postfix_config_dir + $domain_procmail_config_dir + $domain_qmail_config_dir + $domain_sendmail_config_dir + } +} + +error { + + error_analyzer { + $error_analyzer_cache_dir + ? $error_analyzer_cache_mode + ? $error_analyzer_cache_size + $error_analyzer_cache_type + ? $error_analyzer_function + ? $error_analyzer_function_list + $error_analyzer_simple_count_limit + $use_error_analyzer_program + } +} + +get_command { + + get_command { + $get_command_request_limit + } +} + +has { + + has_* { + $has_alarm + $has_fork + $has_getpwgid + $has_getpwuid + $has_select + } +} + +header { + + header_loop_check { + $header_loop_check_rules + $use_header_loop_check + } +} + +html { + + html_archive { + $html_archive_dir + $html_archive_index_order_type + $use_html_archive + } +} + +incoming { + + incoming_article { + $incoming_article_body_size_limit + $incoming_article_header_size_limit + } + + incoming_command_mail { + $incoming_command_mail_body_size_limit + $incoming_command_mail_header_size_limit + } + + incoming_mail_cache { + $incoming_mail_cache_dir + ? $incoming_mail_cache_size + $use_incoming_mail_cache + } +} + +ldap { + + ldap_* { + ? $ldap_query_filter + ? $ldap_search_base + ? $ldap_server_bind + ? $ldap_server_password + ? $ldap_servers + } +} + +lock { + + lock { + $lock_dir + $lock_file + $lock_type + $use_lock + } +} + +log { + + log { + $log_dir + $log_file + $log_format_type + $log_type + $use_log + } +} + +mail { + + mail_* { + $mail_aliases_file + $mail_queue_dir + } +} + +maintainer { + + maintainer_recipient { + $maintainer_recipient_maps + } + + maintainer_* { + ? $maintainer + } +} + +member { + + member { + $member_maps + $primary_member_map + } +} + +message_template { + + message_template_* { + $message_template_dir + } +} + +ml_local { + + ml_local_* { + $ml_local_dir + $ml_local_lib_dir + $ml_local_message_template_dir + $ml_local_share_dir + } +} + +moderator { + + moderator_member { + $moderator_member_maps + $primary_moderator_member_map + } + + moderator_recipient { + $moderator_recipient_maps + $primary_moderator_recipient_map + } +} + +newml_command { + + newml_command { + $newml_command_init_private_dirs + $newml_command_init_public_dirs + ? $newml_command_mta_config_list + $newml_command_postfix_template_files + $newml_command_qmail_template_files + $newml_command_template_files + } +} + +outgoing { + + outgoing_article { + $outgoing_article_body_size_limit + $outgoing_article_header_size_limit + } + + outgoing_command_mail { + $outgoing_command_mail_body_size_limit + $outgoing_command_mail_header_size_limit + } + + outgoing_mail_cache { + $outgoing_mail_cache_dir + ? $outgoing_mail_cache_size + $use_outgoing_mail_cache + } +} + +path { + + path_* { + $path_bunzip2 + $path_bzip2 + $path_cksum + $path_compress + $path_gpg + $path_gunzip + $path_gzcat + $path_gzip + $path_ish + $path_kakasi + $path_less + $path_lha + $path_ls + $path_makemap + $path_md5 + $path_more + $path_namazu + $path_newaliases + $path_nkf + $path_perl + $path_pgp + $path_pgp5 + $path_pgpe + $path_pgpk + $path_pgps + $path_pgpv + $path_postalias + $path_postconf + $path_postfix + $path_postmap + $path_sendmail + $path_spamassassin + $path_spamc + $path_spamd + $path_sum + $path_tar + $path_uuencode + $path_w3m + $path_zcat + } +} + +postfix { + + postfix_* { + ? $postfix_verp_delimiters + $postfix_virtual_map_file + } +} + +privileged_command { + + privileged_command { + ? $privileged_command_prefix + } +} + +procmail { + + procmail_* { + $procmail_aliases_file + } +} + +qmail { + + qmail_* { + ? $qmail_verp_delimiters + $qmail_virtual_map_file + $qmail_virtualdomains_file + } +} + +recipient { + + recipient { + $primary_recipient_map + $recipient_maps + $smtp_recipient_limit + } +} + +report_mail { +} + +rmml_command { + + rmml_command { + ? $rmml_command_mta_config_list + } +} + +sendmail { + + sendmail_* { + $sendmail_virtual_map_file + } +} + +smtp { + + smtp_* { + ? $smtp_sender + ? $smtp_servers + } +} + +spool { + + spool { + $spool_dir + ? $spool_subdir_unit + $spool_type + $use_spool + } +} + +sql { + + sql_* { + ? $sql_add + ? $sql_database + ? $sql_delete + ? $sql_find + ? $sql_get_next_key + ? $sql_getline + ? $sql_password + ? $sql_server + ? $sql_table + ? $sql_user + } +} + +subscribe_command { + + subscribe_command { + $subscribe_command_auth_type + } +} + +system { + + system_* { + ? $system_accounts + } +} + +thread { + + thread_subject_tag { + ? $thread_subject_tag + ? $thread_subject_tag_location + ? $thread_subject_tag_name + $use_thread_subject_tag + } + + thread_track { + $use_thread_track + } + + thread_* { + ? $thread_cgi_base_url + ? $thread_cgi_bgcolor + ? $thread_cgi_title + $thread_db_dir + ? $thread_id_syntax + $thread_sequence_file + } +} + +unsubscribe_command { + + unsubscribe_command { + $unsubscribe_command_auth_type + } +} + +x { + + x_* { + ? $x_ml_name + } +} + + +_file$ { + $guide_file + $help_file + $objective_file + $sequence_file + $summary_file +} + +_dir$ { + $db_dir + $event_queue_dir + $listinfo_base_dir + $listinfo_dir + $listinfo_template_dir + $message_id_cache_dir + $ml_admin_cgi_base_dir + $shared_db_dir + $tmp_dir + $udb_base_dir + $var_dir +} + + +*** unclassified *** + ? $commands_for_admin + ? $commands_for_admin_cgi + ? $commands_for_privileged_user + ? $commands_for_stranger + ? $commands_for_user + ? $list_addresses + $post_restrictions + $post_restrictions_reject_notice_data_type + ? $reply_message_charset + ? $reply_message_subject + ? $summary_format_address_length + ? $summary_format_style + ? $template_file_charset + ? $unsafe_header_fields +</screen> +</para> |
