aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2007-09-06 07:32:12 +0000
committerSergey Poznyakoff <gray@gnu.org.ua>2007-09-06 07:32:12 +0000
commita5e06ce6cbbc41a806857055bb689bdce4d39b57 (patch)
treec65de1c957d4778206f9bed940e2ca2161bcc593
parent94fad0d95ab5861c7fab4f30f1584d6fa725af12 (diff)
downloadmailfromd-a5e06ce6cbbc41a806857055bb689bdce4d39b57.tar.gz
mailfromd-a5e06ce6cbbc41a806857055bb689bdce4d39b57.tar.bz2
Update
git-svn-id: file:///svnroot/mailfromd/trunk@1507 7a8a7f39-df28-0410-adc6-e0d955640f24
-rw-r--r--doc/mailfromd.texi98
1 files changed, 49 insertions, 49 deletions
diff --git a/doc/mailfromd.texi b/doc/mailfromd.texi
index 8d72ec45..1043082f 100644
--- a/doc/mailfromd.texi
+++ b/doc/mailfromd.texi
@@ -983,13 +983,13 @@ the corresponding section below.
983 Upgrading to this version does not require any special efforts. You 983 Upgrading to this version does not require any special efforts. You
984can use your configuration files and filter scripts without any changes. 984can use your configuration files and filter scripts without any changes.
985Notice only the following major differences between 4.1 and 4.0: 985Notice only the following major differences between 4.1 and 4.0:
986 986
987@itemize @bullet 987@itemize @bullet
988@item Input files are preprocessed before compilation. 988@item Input files are preprocessed before compilation.
989@xref{Preprocessor}, for the description. 989@xref{Preprocessor}, for more information.
990 990
991@item There is a way to discern between a not-supplied optional 991@item There is a way to discern between a not-supplied optional
992parameter, and a supplied one, having null value (@pxref{defined}). 992parameter, and a supplied one, having null value (@pxref{defined}).
993 993
994@item The version 4.1 implements @code{sprintf} function 994@item The version 4.1 implements @code{sprintf} function
995(@pxref{String formatting}) and @code{printf} macro 995(@pxref{String formatting}) and @code{printf} macro
@@ -1050,18 +1050,18 @@ warning: `#pragma option ehlo' is deprecated,
1050steps: 1050steps:
1051 1051
1052@enumerate 1 1052@enumerate 1
1053@item 1053@item
1054 Change @code{#pragma option mailfrom @var{value}} to 1054 Change @code{#pragma option mailfrom @var{value}} to
1055@code{set mailfrom_address @var{value}}. Refer to 1055@code{set mailfrom_address @var{value}}. Refer to
1056@ref{mailfrom_address}, for the detailed discussion of this variable. 1056@ref{mailfrom_address}, for a detailed discussion of this variable.
1057 1057
1058@item 1058@item
1059 Change @code{#pragma option ehlo @var{value}} to 1059 Change @code{#pragma option ehlo @var{value}} to
1060@code{set ehlo_domain @var{value}}. Refer to 1060@code{set ehlo_domain @var{value}}. Refer to
1061@ref{ehlo_domain}, for the detailed discussion of this variable. 1061@ref{ehlo_domain}, for a detailed discussion of this variable.
1062 1062
1063@item 1063@item
1064 Include @file{status.mfh}. Add the following line to the top of 1064 Include @file{status.mfh}. Add the following line to the top of
1065your startup file: 1065your startup file:
1066 1066
1067@smallexample 1067@smallexample
@@ -1078,26 +1078,26 @@ use the following @command{sed} expression: @samp{s/&\([a-z]\)/\1/g}.
1078to the top of your script: 1078to the top of your script:
1079 1079
1080@smallexample 1080@smallexample
1081#require dns 1081#require dns
1082@end smallexample 1082@end smallexample
1083 1083
1084@xref{Modules}, for the detailed description of the module system. 1084@xref{Modules}, for a detailed description of the module system.
1085 1085
1086@item 1086@item
1087 Replace all occurrences of @code{next} with @code{pass}. 1087 Replace all occurrences of @code{next} with @code{pass}.
1088 1088
1089@item 1089@item
1090 If your code uses function @code{match_cidr}, add the following line 1090 If your code uses function @code{match_cidr}, add the following line
1091to the top of your script: 1091to the top of your script:
1092 1092
1093@smallexample 1093@smallexample
1094#require match_cidr 1094#require match_cidr
1095@end smallexample 1095@end smallexample
1096 1096
1097@xref{Modules}, for the description of @acronym{MFL} module system. 1097@xref{Modules}, for a description of @acronym{MFL} module system.
1098 1098
1099@end enumerate 1099@end enumerate
1100 1100
1101@node 30x-31x 1101@node 30x-31x
1102@section Upgrading from 3.0.x to 3.1 1102@section Upgrading from 3.0.x to 3.1
1103@cindex upgrading from 3.0.x to 3.1 1103@cindex upgrading from 3.0.x to 3.1
@@ -1603,13 +1603,13 @@ hostname($client_addr)
1603hostname $client_addr 1603hostname $client_addr
1604@end smallexample 1604@end smallexample
1605 1605
1606@noindent 1606@noindent
1607However, such syntax creates several ambiguities, so use it sparingly 1607However, such syntax creates several ambiguities, so use it sparingly
1608if at all. We recommend to always use parentheses when calling a 1608if at all. We recommend to always use parentheses when calling a
1609function; @xref{Cautions}, for the detailed analysis of of this syntax. 1609function; @xref{Cautions}, for a detailed analysis of of this syntax.
1610 1610
1611 When a function does not deliver a result, it should only be called 1611 When a function does not deliver a result, it should only be called
1612as a statement. 1612as a statement.
1613 1613
1614 Functions may be recursive, even mutually recursive. 1614 Functions may be recursive, even mutually recursive.
1615 1615
@@ -1792,13 +1792,13 @@ the remote host.
1792@item I/O timeout 1792@item I/O timeout
1793 Maximum amount of time for finishing an input/output 1793 Maximum amount of time for finishing an input/output
1794operation with the remote @acronym{SMTP} server. 1794operation with the remote @acronym{SMTP} server.
1795@end table 1795@end table
1796 1796
1797 These three timeouts can be set using the following @dfn{pragmatic 1797 These three timeouts can be set using the following @dfn{pragmatic
1798comments}@footnote{@xref{Pragmatic comments}, for the detailed 1798comments}@footnote{@xref{Pragmatic comments}, for a detailed
1799description of pragmatic comments.} in the script file: 1799description of pragmatic comments.} in the script file:
1800 1800
1801@smallexample 1801@smallexample
1802@group 1802@group
1803#pragma option connect-timeout @var{interval} 1803#pragma option connect-timeout @var{interval}
1804#pragma option initial-response-timeout @var{interval} 1804#pragma option initial-response-timeout @var{interval}
@@ -1980,13 +1980,13 @@ where @var{expr} is any valid @acronym{MFL} expression.
1980declarations as well as outside of them. 1980declarations as well as outside of them.
1981 1981
1982 There are two kinds of @command{Mailfromd} variables: @dfn{global 1982 There are two kinds of @command{Mailfromd} variables: @dfn{global
1983variables}, that are visible to all handlers and functions, and 1983variables}, that are visible to all handlers and functions, and
1984@dfn{automatic variables}, that are available only within the handler 1984@dfn{automatic variables}, that are available only within the handler
1985or function where they are declared. For our purpose we need a global 1985or function where they are declared. For our purpose we need a global
1986variable (@xref{Variables, Variable classes}, for the detailed description 1986variable (@xref{Variables, Variable classes}, for detailed descriptions
1987of both kinds of variables). 1987of both kinds of variables).
1988 1988
1989 The following example illustrates the approach that allows to use 1989 The following example illustrates the approach that allows to use
1990the @code{HELO} domain name in any handler: 1990the @code{HELO} domain name in any handler:
1991 1991
1992@smallexample 1992@smallexample
@@ -2283,13 +2283,13 @@ to the reader.
2283@anchor{whitelisting} 2283@anchor{whitelisting}
2284@cindex whitelisting 2284@cindex whitelisting
2285 One special case is @dfn{whitelisting}, which is often used 2285 One special case is @dfn{whitelisting}, which is often used
2286together with greylisting. To implement it, @command{mailfromd} 2286together with greylisting. To implement it, @command{mailfromd}
2287provides the function @code{dbmap}, which takes two mandatory arguments: 2287provides the function @code{dbmap}, which takes two mandatory arguments:
2288@code{dbmap(@var{file}, @var{key})} (it also allows an optional third 2288@code{dbmap(@var{file}, @var{key})} (it also allows an optional third
2289argument, see @ref{dbmap}, for the description of it). The first argument is 2289argument, see @ref{dbmap}, for more information on it). The first argument is
2290the name of the @acronym{DBM} file where to search for the key, the second one 2290the name of the @acronym{DBM} file where to search for the key, the second one
2291is the key to be searched. Assuming you keep your whitelist database 2291is the key to be searched. Assuming you keep your whitelist database
2292in file @file{/var/run/whitelist.db}, a more practical example will be: 2292in file @file{/var/run/whitelist.db}, a more practical example will be:
2293 2293
2294@smallexample 2294@smallexample
2295@group 2295@group
@@ -2870,13 +2870,13 @@ administrator is to make sure it is available by configuring
2870@code{Sendmail} to export the macro @samp{i} to @command{mailfromd}. 2870@code{Sendmail} to export the macro @samp{i} to @command{mailfromd}.
2871The rule of thumb is: make @samp{i} available to the very first 2871The rule of thumb is: make @samp{i} available to the very first
2872handler @command{mailfromd} executes. It is not necessary to export 2872handler @command{mailfromd} executes. It is not necessary to export
2873it to the rest of the handlers, since @command{mailfromd} will cache 2873it to the rest of the handlers, since @command{mailfromd} will cache
2874it. For example, if your filter script contains @samp{envfrom} and 2874it. For example, if your filter script contains @samp{envfrom} and
2875@samp{envrcpt} handlers, export @samp{i} for @samp{envfrom}. 2875@samp{envrcpt} handlers, export @samp{i} for @samp{envfrom}.
2876@xref{Sendmail Configuration}, for the instructions on how to ensure 2876@xref{Sendmail Configuration}, for instructions on how to ensure
2877it. 2877it.
2878 2878
2879@xopindex{debug, introduced} 2879@xopindex{debug, introduced}
2880@cindex debugging level 2880@cindex debugging level
2881@cindex verbosity level 2881@cindex verbosity level
2882 To push the log verbosity further, use @code{#pragma option debug} 2882 To push the log verbosity further, use @code{#pragma option debug}
@@ -3039,13 +3039,13 @@ regular expression. For example:
3039@end table 3039@end table
3040 3040
3041@anchor{uncaught exceptions} 3041@anchor{uncaught exceptions}
3042@subheading Uncaught exceptions 3042@subheading Uncaught exceptions
3043 Another kind of runtime errors are @dfn{uncaught exceptions}, 3043 Another kind of runtime errors are @dfn{uncaught exceptions},
3044i.e. exceptional conditions for which no handler was installed 3044i.e. exceptional conditions for which no handler was installed
3045(@xref{Exceptions}, for the information on exceptions and on how to 3045(@xref{Exceptions}, for information on exceptions and on how to
3046handle them). These errors mean that the programmer (i.e. you), made 3046handle them). These errors mean that the programmer (i.e. you), made
3047no provision for some specific conditions. For example, consider the 3047no provision for some specific conditions. For example, consider the
3048following code: 3048following code:
3049 3049
3050@smallexample 3050@smallexample
3051@group 3051@group
@@ -3604,13 +3604,13 @@ The following options control @acronym{I/O} operations over @acronym{TCP}.
3604 3604
3605@deffn {pragma option} connect-timeout @va