From 989a5bbb74c3620abaa2191ce2c4f8d5968dbf0a Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Tue, 15 Sep 2009 10:40:29 +0300 Subject: Branch off from the Mailfromd project into a separate repository. --- doc/.gitignore | 22 +++++++ doc/Makefile.am | 39 +++++-------- doc/pies.texi | 176 ++++++++++++++++++++++++++++++++++++++++++++------------ 3 files changed, 176 insertions(+), 61 deletions(-) create mode 100644 doc/.gitignore (limited to 'doc') diff --git a/doc/.gitignore b/doc/.gitignore new file mode 100644 index 0000000..94d867b --- /dev/null +++ b/doc/.gitignore @@ -0,0 +1,22 @@ +Makefile +Makefile.in +pies.info* +stamp-vti +version.texi +pies.aux +pies.cp +pies.cps +pies.dvi +pies.fl +pies.fn +pies.kw +pies.ky +pies.log +pies.mt +pies.op +pies.pg +pies.pr +pies.ps +pies.toc +pies.tp +pies.vr diff --git a/doc/Makefile.am b/doc/Makefile.am index ee522f2..502c46e 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,34 +1,25 @@ -# This file is part of Mailfromd. +# This file is part of Pies. # Copyright (C) 2005, 2006, 2007, 2008, 2009 Sergey Poznyakoff # -# Mailfromd is free software; you can redistribute it and/or modify +# Pies 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, or (at your option) # any later version. # -# Mailfromd is distributed in the hope that it will be useful, +# Pies 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. # # You should have received a copy of the GNU General Public License -# along with Mailfromd. If not, see . +# along with Pies. If not, see . -info_TEXINFOS=mailfromd.texi -mailfromd_TEXINFOS=\ +info_TEXINFOS=pies.texi +pies_TEXINFOS=\ fdl.texi\ - gacopyz.texi\ macros.texi\ - mtasim.texi\ pies.texi\ - pmult.texi\ - pragma-database.texi\ - pragma-option.texi\ - rendition.texi\ - smap.texi\ - strftime.texi\ - upgrade.texi\ - values.texi + rendition.texi EXTRA_DIST = \ check-docs.sh\ @@ -41,7 +32,7 @@ clean-local: # Checking check-format: - @if test -n "`cat $(info_TEXINFOS) $(mailfromd_TEXINFOS) | tr -d -c '\t'`"; then \ + @if test -n "`cat $(info_TEXINFOS) $(pies_TEXINFOS) | tr -d -c '\t'`"; then \ echo "Sources contain tabs; run make untabify"; \ false; \ fi @@ -65,7 +56,7 @@ check-options: check-config: @check-docs.sh 'configuration statements' \ '/mf_cfg_param\[\] *= *{/,/^}/s/[ \t]*{ *"\([^,"]*\)".*/\1/pg' \ - 's/@deffn {Mailfromd Conf} *\([^@,]*\).*/\1/p' \ + 's/@deffn {Pies Conf} *\([^@,]*\).*/\1/p' \ $(top_srcdir)/mfd/main.c -- \ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -E - \ $(info_TEXINFOS) @@ -101,12 +92,12 @@ check-exceptions: @check-docs.sh exceptions \ '/typedef enum mf_exception_code {/,/^};/s/[ \t]*mfe_\(.*\),.*/e_\1/p;/typedef enum mf_status_code {/,/^};/s/[ \t]*mf_\(.*\),.*/\1/p' \ 's/@cindex \([^,][^,]*\), exception type/\1/p' \ - $(top_srcdir)/mfd/mailfromd.h -- \ + $(top_srcdir)/mfd/pies.h -- \ $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -E - \ $(info_TEXINFOS) check-refs: - @for file in $(info_TEXINFOS) $(mailfromd_TEXINFOS); \ + @for file in $(info_TEXINFOS) $(pies_TEXINFOS); \ do \ sed -e = $$file | \ sed -n 'N;/@FIXME-.*ref/{s/\(^[0-9][0-9]*\).*@FIXME-.*ref{\([^}]*\)}.*/'$$file':\1: \2/gp}'; \ @@ -120,7 +111,7 @@ check-refs: fi check-fixmes: - @for file in $(info_TEXINFOS) $(mailfromd_TEXINFOS); \ + @for file in $(info_TEXINFOS) $(pies_TEXINFOS); \ do \ sed -e = $$file | \ sed -n 'N;/@FIXME{/{s/\(^[0-9][0-9]*\).*@FIXME{\([^}]*\).*/'$$file':\1: \2/gp}'; \ @@ -135,7 +126,7 @@ check-fixmes: fi check-writeme: - @grep -Hn @WRITEME $(info_TEXINFOS) $(mailfromd_TEXINFOS) > $@-t; \ + @grep -Hn @WRITEME $(info_TEXINFOS) $(pies_TEXINFOS) > $@-t; \ if [ -s $@-t ]; then \ echo "Empty nodes:"; \ cat $@-t; \ @@ -146,7 +137,7 @@ check-writeme: fi check-unrevised: - @grep -Hn @UNREVISED $(info_TEXINFOS) $(mailfromd_TEXINFOS) > $@-t; \ + @grep -Hn @UNREVISED $(info_TEXINFOS) $(pies_TEXINFOS) > $@-t; \ if [ -s $@-t ]; then \ echo "Unrevised nodes:"; \ cat $@-t; \ @@ -170,7 +161,7 @@ master-menu: $(AM_V_GEN)emacs -batch -l mastermenu.el -f make-master-menu $(info_TEXINFOS) untabify: - @emacs -batch -l untabify.el $(info_TEXINFOS) $(mailfromd_TEXINFOS) + @emacs -batch -l untabify.el $(info_TEXINFOS) $(pies_TEXINFOS) final: untabify master-menu diff --git a/doc/pies.texi b/doc/pies.texi index 7f020f1..cc35b5d 100644 --- a/doc/pies.texi +++ b/doc/pies.texi @@ -1,7 +1,103 @@ -@c This file is part of the Mailfromd manual. -@c Copyright (C) 2008, 2009 Sergey Poznyakoff -@c See file mailfromd.texi for copying conditions. -@c ******************************************************************* +\input texinfo @c -*-texinfo-*- +@smallbook +@c %**start of header +@setfilename pies.info +@settitle Pies +@c %**end of header +@setchapternewpage odd + +@defcodeindex pr +@defcodeindex op +@c mt is the same as op, but used for mtasim options. +@defcodeindex mt +@defcodeindex kw +@defcodeindex fl + +@syncodeindex fn cp +@syncodeindex vr cp +@syncodeindex ky cp +@syncodeindex mt cp +@syncodeindex pg cp +@syncodeindex tp cp +@syncodeindex op cp +@syncodeindex pr cp +@syncodeindex kw cp +@syncodeindex fl cp + +@include version.texi +@include rendition.texi +@include macros.texi + +@ifinfo +@dircategory GNU Utilities +@direntry (pies) pies. Program execution supervisor. +@end direntry +@end ifinfo + +@copying +Published by the Free Software Foundation, +51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301 USA + +Copyright @copyright{} 2005, 2006, 2007, 2008, 2009 Sergey Poznyakoff + +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with the Front-Cover texts being ``Pies Manual'', +and with the Back-Cover Texts as in (a) below. A copy of the license +is included in the section entitled ``GNU Free Documentation License''. + +(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify +this GNU Manual, like GNU software. Copies published by the Free +Software Foundation raise funds for GNU development.'' +@end copying + +@titlepage +@title Program Invocation and Execution Supervisor +@subtitle version @value{VERSION}, @value{UPDATED} +@author Sergey Poznyakoff. +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@page +@summarycontents +@page +@contents + +@ifnottex +@node Top +@top Pies + +This edition of the @cite{Pies Manual}, last updated @value{UPDATED}, +documents @command{pies} Version @value{VERSION}. +@end ifnottex + +@menu +* Intro:: +* Pies Configuration File:: +* Component Statement:: +* include-meta1:: +* Global Configuration:: +* Pies Debugging:: +* Configuration Example:: +* Command Line Usage:: +* Pies Invocation:: + +Appendices + +* Copying This Manual:: The GNU Free Documentation License. +* Concept Index:: Index of Concepts. + +@c @detailmenu +@c @end detailmenu + +@end menu + +@node Intro +@chapter Introduction @cindex component, pies The name @command{pies} (pronounced @samp{p-yes}) stands for @samp{Program Invocation and Execution Supervisor}. This utility @@ -85,18 +181,10 @@ stopping component dependencies, the same ordering is preserved. statement (@pxref{include-meta1}). @menu -* Pies Configuration File:: -* Component Statement:: -* include-meta1:: -* Global Configuration:: -* Pies Debugging:: -* Configuration Example:: -* Command Line Usage:: -* Pies Invocation:: @end menu @node Pies Configuration File -@section Pies Configuration File +@chapter Pies Configuration File @command{Pies} reads its configuration from the main Mailutils configuration file. @xref{configuration, Mailutils Configuration File,, mailutils, GNU Mailutils Manual}, for a description of GNU @@ -104,7 +192,7 @@ Mailutils configuration system. It is recommended to use @code{include @var{directory}} statement (@pxref{Include, Include Statement,, mailutils, GNU Mailutils Manual}), and to place @command{pies} configuration in file @file{@var{directory}/pies}. -@xref{MeTA1}, for an example. +@xref{MeTA1,,, mailfromd, Mailfromd Manual}, for an example. The following standard Mailutils configuration statements are understood: @@ -123,7 +211,7 @@ mailutils, GNU Mailutils Manual}. @end multitable @node Component Statement -@section Component Statement +@chapter Component Statement @kwindex component The @code{component} statement defines a new component: @@ -203,7 +291,7 @@ respawn too fast. @end menu @node Prerequisites -@subsection Component Prerequisites +@section Component Prerequisites @cindex declaring prerequisites @cindex prerequisites, declaring Prerequisites (@pxref{component prerequisite}) for a component are @@ -230,7 +318,7 @@ component tags. @end deffn @node Component Privileges -@subsection Component Privileges +@section Component Privileges @cindex privileges, pies Following statements control the privileges the component is executed with. @@ -250,7 +338,7 @@ components specified in @file{meta1.conf} file (@pxref{include-meta1}). @end deffn @node Resources -@subsection Resources +@section Resources @deffn {Pies Conf} limits @var{string} Impose limits on system resources, as defined by @var{string}. The @@ -340,7 +428,7 @@ before assignment. @end deffn @node Actions Before Startup -@subsection Actions Before Startup +@section Actions Before Startup Several statements are available that specify actions to perform immediately before starting the component: @@ -365,7 +453,7 @@ This may change in future versions. @end deffn @node Exit Actions -@subsection Exit Actions +@section Exit Actions @kwindex return-code The default behavior of @command{pies} if an @samp{init-style} component terminates is to restart it. Unless the component @@ -477,7 +565,7 @@ The following macro-variables are expanded within @var{string}: @headitem Variable @tab Expansion @item canonical-program-name @tab @samp{pies} @item program-name @tab Program name of the @command{pies} binary. -@item package @tab Package name (@samp{Mailfromd}). +@item package @tab Package name (@samp{Pies}). @item version @tab Package version (@value{VERSION}). @item mu-version @tab Version of GNU Mailutils. @item component @tab Name of the terminated component. @@ -504,7 +592,7 @@ all components. Any @code{return-code} statements appearing within a @code{component} block override the global ones. @node Output Redirectors -@subsection Output Redirectors +@section Output Redirectors @cindex repeater Output redirectors allow to redirect the standard error and/or standard output of a component to a file or @command{syslog} facility. @@ -550,7 +638,7 @@ through @samp{local7} (all names case-insensitive), or a facility number. @end deffn @node Inetd-Style Components -@subsection Inetd-Style Components +@section Inetd-Style Components @cindex inetd-style components Inetd-style components are declared using @code{mode inetd} statement. You must also declare a socket to listen for requests for @@ -608,7 +696,7 @@ be added if there is a demand. @end deffn @node Meta1-Style Components -@subsection Meta1-Style Components +@section Meta1-Style Components @cindex meta1-style components Meta1-style components are declared using @code{mode pass} statement. For such components, you must declare both a socket to @@ -627,7 +715,7 @@ upon its startup. @end deffn @node Component Syntax Summary -@subsection Component Syntax Summary +@section Component Syntax Summary This subsection summarizes the @code{component} summary. For each statement, a reference to its detailed description is supplied. @@ -727,7 +815,7 @@ component @var{tag} @{ @end smallexample @node include-meta1 -@section Using MeTA1 Configuration File +@chapter Using MeTA1 Configuration File @cindex /etc/meta1/meta1.conf @command{Pies} is able to take a list of components from MeTA1 configuration file: @@ -782,7 +870,7 @@ component smtps @{ @end smallexample @node Global Configuration -@section Global Configuration +@chapter Global Configuration The statements described in this section affect @command{pies} behavior as a whole. @@ -811,7 +899,7 @@ Default is 5 seconds. @end menu @node Less Useful Statements -@subsection Less Useful Statements +@section Less Useful Statements Some configuration file statements are provided for completeness and are rarely, if at all used. If used improperly, they may severely @@ -826,7 +914,7 @@ suit your needs: @deffn {Pies Conf} pidfile @var{file} Write PID of the master @command{pies} process to @var{file}. By default, master PID is stored in @file{@var{statedir}/pies.pid} -(@pxref{statedir}). +(@FIXME-pxref{statedir}). @end deffn @deffn {Pies Conf} control-file @var{file} @@ -858,7 +946,7 @@ Retain all supplementary groups of which user, given with @end deffn @node Pies Debugging -@section Pies Debugging +@chapter Pies Debugging The amount of debugging information produced by @command{pies} is configured by the following two configuration statements. First of all, the standard @code{debug} block statement controls debugging of the underlying GNU @@ -894,7 +982,7 @@ Debug the lexical analyzer of MeTA1 configuration file. @end deffn @node Configuration Example -@section Configuration Example +@chapter Configuration Example In this section we provide several examples of working @command{pies} configuration files. @@ -905,8 +993,9 @@ configuration files. @end menu @node Simple Pies -@subsection Simplest Case: Using Pies to Run Pmult - The example below runs @command{pmult} (@pxref{pmult}) utility with +@section Simplest Case: Using Pies to Run Pmult + The example below runs @command{pmult} (@pxref{pmult, Pmilter +multiplexer program,, mailfromd, Mailfromd Manual}) utility with the privileges of @samp{meta1} user. Both standard error and standard output are redirected to the syslog facility @samp{mail}, priorities @samp{err} and @samp{info}, correspondingly. @@ -922,7 +1011,7 @@ component pmult @{ @end smallexample @node Hairy Pies -@subsection Using Pies to Run Pmult and MeTA1 +@section Using Pies to Run Pmult and MeTA1 The example below is a working configuration file for running @command{pmult} and all components of MeTA1, configured in @file{/etc/meta1/meta1.conf}. The global @code{return-code} statement @@ -964,7 +1053,7 @@ include-meta1 "/etc/meta1/meta1.conf"; @end smallexample @node Inetd Pies -@subsection Running Pies Instead of Inetd +@section Running Pies Instead of Inetd This configuration file allows to run @command{pies} instead of @command{initd}. It starts two services: @samp{ftp} and @samp{pop3d}, @@ -997,7 +1086,7 @@ component pop3d @{ @end smallexample @node Command Line Usage -@section Command Line Usage +@chapter Command Line Usage When run without arguments, @command{pies} parses and loads the configuration file, detaches itself from the controlling terminal @@ -1106,7 +1195,7 @@ smtps: smar qmgr @end smallexample @node Pies Invocation -@section Pies Invocation +@chapter Pies Invocation This section summarizes @command{pies} command line options. @@ -1157,3 +1246,16 @@ Apart from these, the common GNU Mailutils options are understood, which are useful for checking @command{pies} configuration file for syntax errors. @xref{Common Options, Common Options, , mailutils, GNU Mailutils Manual}, for a detailed description of these. + +@node Copying This Manual +@appendix GNU Free Documentation License +@include fdl.texi + +@node Concept Index +@unnumbered Concept Index + +This is a general index of all issues discussed in this manual + +@printindex cp + +@bye -- cgit v1.2.1