aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2007-10-23 13:02:08 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2007-10-23 13:02:08 +0000
commit9e569139583178c7e1c35147cef3fd17493a11da (patch)
tree36defb2a0547176e1ad91b8fc653f5dc687c9da9 /doc
parent80c8065d88f8c0621d6b690976dc675092db6509 (diff)
downloadmailfromd-9e569139583178c7e1c35147cef3fd17493a11da.tar.gz
mailfromd-9e569139583178c7e1c35147cef3fd17493a11da.tar.bz2
Reimplement syslog-async. Thanks Simon Kelley for relicensing it under GPLv3.
git-svn-id: file:///svnroot/mailfromd/trunk@1520 7a8a7f39-df28-0410-adc6-e0d955640f24
Diffstat (limited to 'doc')
-rw-r--r--doc/mailfromd.texi83
1 files changed, 73 insertions, 10 deletions
diff --git a/doc/mailfromd.texi b/doc/mailfromd.texi
index 078f722a..6aa44c6b 100644
--- a/doc/mailfromd.texi
+++ b/doc/mailfromd.texi
@@ -131,6 +131,7 @@ Sender Address Verification.
Building the Package
+* 410-420:: Upgrading from 4.1 to 4.2
* 400-410:: Upgrading from 4.0 to 4.1
* 31x-400:: Upgrading from 3.1.x to 4.0
* 30x-31x:: Upgrading from 3.0.x to 3.1
@@ -885,7 +886,7 @@ Expiration settings can be changed at run time using
@cindex enable-syslog-async, @option{--enable-syslog-async}, @command{configure} option
@cindex syslog, non-blocking
-@item Select @command{syslog} implementation to use.
+@item Select a @command{syslog} implementation to use.
@anchor{syslog-async}
@command{Mailfromd} uses @code{syslog} for diagnostics output. The
@@ -896,7 +897,7 @@ result, when an application calls @code{syslog()}, and
the application will hang.
@cindex Simon Kelley
- In the case of a daemon as @command{mailfromd}, it is more important
+ For @command{mailfromd}, as for any daemon, it is more important
that it continue to run, than that it continue to log. For this
purpose, @command{mailfromd} is shipped with a non-blocking
@code{syslog} implementation by Simon Kelley. This implementation,
@@ -908,8 +909,12 @@ lines are lost, this fact is logged with a message of the form:
async_syslog overflow: 5 log entries lost
@end smallexample
- To enable non-blocking @command{syslog}, use the
-@option{--enable-syslog-async} command line option:
+ You can select which implementation to run when starting
+@command{mailfromd}, by using @option{--syslog-async} or
+@option{--no-syslog-async} command line options
+(@pxref{Logging and Debugging}). When configuring, you can set
+the asynchronous syslog as the @emph{default} syslog implementation,
+using the @option{--enable-syslog-async} command line option:
@smallexample
./configure --enable-syslog-async
@@ -945,7 +950,7 @@ Socket.................................... mailfrom
Expiration interval....................... 86400
Negative DNS answer expiration interval... 3600
Rates expire interval..................... 300
-Syslog implementation..................... blocking
+Default syslog implementation............. blocking
Readline (for mtasim)..................... yes
Documentation rendition type.............. PROOF
*******************************************************************
@@ -969,6 +974,7 @@ the corresponding section below.
@end enumerate
@menu
+* 410-420:: Upgrading from 4.1 to 4.2
* 400-410:: Upgrading from 4.0 to 4.1
* 31x-400:: Upgrading from 3.1.x to 4.0
* 30x-31x:: Upgrading from 3.0.x to 3.1
@@ -976,6 +982,22 @@ the corresponding section below.
* 1x-2x:: Upgrading from 1.x to 2.x
@end menu
+@node 410-420
+@section Upgrading from 4.1 to 4.2
+@cindex Upgrading from 4.1 to 4.2
+@UNREVISED{}
+ Upgrading to this version does not require any special efforts. You
+can use your configuration files and filter scripts without any
+changes. The only difference worth noticing is that starting from this
+version @command{mailfromd} is always compiled with asynchronous
+syslog implementation. The @option{--enable-syslog-async}
+configuration file option is still available, but its meaning has
+changed: it sets the @emph{default} syslog implementation to use
+(@pxref{syslog-async}). Thus, it can be used the same way it was in
+previous versions. You can also select the syslog implementation at
+run time, see @ref{Logging and Debugging, --syslog-async option}, for
+more detailed information.
+
@node 400-410
@section Upgrading from 4.0 to 4.1
@cindex Upgrading from 4.0 to 4.1
@@ -1011,7 +1033,7 @@ Pragma options: @code{retry}, @code{io-retry}, and
@cindex upgrading from 3.1.x to 4.0
Before building this version, please re-read the chapter
-@xref{Building}, especially the section @xref{syslog-async, Using
+@xref{Building}, especially the section @ref{syslog-async, Using
non-blocking syslog}.
Starting from the version 4.0, @acronym{MFL} no longer uses the
@@ -2156,15 +2178,15 @@ actual @var{email} owner won't be blocked by actions of some spammer
abusing his/her address.
To control and update sending rates, the @code{rate} function is
-provided. It takes two arguments: @code{key}, whose meaning is
-described above, and @code{interval}, or the number of seconds, to
+provided. It takes two mandatory arguments: @code{key}, whose meaning
+is described above, and @code{interval}, or the number of seconds, to
which the actual sending rate value is converted. Remember, that it is
stored internally as a floating point number, and thus cannot be used
in @command{mailfromd} filters, which operate only on integer numbers.
To use the rate value, it is first converted to messages per given
interval, which is an integer number. For example, the rate
@code{0.138888} brought to 1-hour interval gives @code{500}
-(messages per hour).
+(messages per hour).
Wherever the @code{rate} function is called, it recomputes and
updates the rate record for the given @var{key}, and returns its
@@ -2216,6 +2238,7 @@ with the given key value were detected:
@end smallexample
For additional information about @code{rate} function, see @ref{rate}.
+
@node Greylisting
@section Greylisting
@@ -2420,7 +2443,7 @@ user: mail
statedir: /var/run/mailfromd
socket: unix:/var/run/mailfromd/mailfrom
pidfile: /var/run/mailfromd/mailfromd.pid
-syslog: blocking
+default syslog: blocking
database format: Berkeley DB 2.x
dns database: /var/run/mailfromd/dns.db
dns negative expiration: 3600
@@ -2830,6 +2853,24 @@ these defaults, two command line options are provided:
@option{--stderr} to print everything to standard error and
@option{--syslog} to output all diagnostics to syslog.
+@cindex syslog, default implementation
+@cindex syslog, non-blocking
+@cindex syslog, asynchronous
+@cindex asynchronous syslog
+@cindex non-blocking syslog
+@xopindex{syslog-async, introduced}
+@xopindex{no-syslog-async, introduced}
+ The data can be sent to syslog using two ways: the @code{syslog}
+function from the system @file{libc} library, which is a @dfn{blocking}
+implementation in most cases, and the internal, @dfn{asynchronous}
+syslog implementation. @xref{syslog-async, Using non-blocking syslog},
+for more information on these implementations and for information on
+how to select the default one. Two options are provided to select the
+implementation to use at run time: the @option{--syslog-async} option
+instructs @command{mailfromd} to use asynchronous version, and the
+@option{--no-syslog-async} option instructs it to use the blocking
+version.
+
@cindex syslog facility, selecting
@cindex selecting syslog facility
@cindex syslog facility, default
@@ -10410,6 +10451,17 @@ Output logs to syslog @var{facility}.
@item --log-tag=@var{string}
Tag syslog entries with the given @var{string}, instead of the program name.
+@opsummary{no-syslog-async}
+@item --no-syslog-async
+Use system @command{libc} syslog implementation. @xref{Logging and Debugging},
+for more information about two syslog flavors, and see @ref{syslog-async,
+Using non-blocking syslog}, for information on how to set default
+syslog implementation at compile time.
+
+To inspect the default syslog implementation, use the
+@option{--show-defaults} command line option (@pxref{Databases,
+show-defaults}).
+
@opsummary{stderr}
@item -s
@itemx --stderr
@@ -10460,6 +10512,17 @@ Output logs to syslog. This is the default, unless any of the
following options is used: @option{--compact}, @option{--delete},
@option{--expire}, @option{--test}, and @option{--list}.
+@opsummary{syslog-async}
+@item --syslog-async
+Use asynchronous syslog implementation. @xref{Logging and Debugging},
+for more information about two syslog flavors, and see @ref{syslog-async,
+Using non-blocking syslog}, for information on how to set default
+syslog implementation at compile time.
+
+To inspect the default syslog implementation, use the
+@option{--show-defaults} command line option (@pxref{Databases,
+show-defaults}).
+
@opsummary{xref}
@item --xref
Same as @option{--dump-xref}. @xref{Logging and Debugging}.

Return to:

Send suggestions and report system problems to the System administrator.