aboutsummaryrefslogtreecommitdiff
path: root/doc/mailfromd.texi
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2017-10-19 22:06:20 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2017-10-19 22:06:20 +0300
commit0d8954ca25771bc6c6f5d9cf9bfa38a2b1bbba6e (patch)
treecba9192cbf520ef5527e3b1c7efccf69df24a334 /doc/mailfromd.texi
parentb5a739de9d8ada25c4ce7cf5f365ecde89f470e5 (diff)
downloadmailfromd-0d8954ca25771bc6c6f5d9cf9bfa38a2b1bbba6e.tar.gz
mailfromd-0d8954ca25771bc6c6f5d9cf9bfa38a2b1bbba6e.tar.bz2
Improve DNS resolver API
Remove arbitrary size limits. * NEWS: Version 8.2.90 * configure.ac: Likewise. Require Mailutils 3.3 * doc/calloutd.texi: Update. * doc/functions.texi: Update. * doc/mailfromd.texi: Update. * doc/upgrade.texi: Update. * lib/dns.c: Rewrite. * lib/dns.h (MAXMXCOUNT, MXF_MAX): Remove. (mxbuf_init,dns_resolve_ipstr) (a_lookup,ptr_lookup,txt_lookup) (spf_lookup): Change protos. (dns_reply): New struct. (dns_reply_free,dns_reply_ip): New functions. * lib/libmf.h (getmxip): Change proto. * src/builtin/dns.bi: Remove runtime configuration statements: max-dns-reply-a, max-dns-reply-ptr, and max-dns-reply-mx. Rewrite using the new DNS API. * src/callout.c: Update. * src/mailfromd.h: Update. * src/main.c: Remove the max-match-mx configuration statement. * src/prog.c: Update. * src/spf.c: Update. * src/spf.h: Update. * src/srvcfg.c: Remove the max-callout-mx configuration statement.
Diffstat (limited to 'doc/mailfromd.texi')
-rw-r--r--doc/mailfromd.texi89
1 files changed, 25 insertions, 64 deletions
diff --git a/doc/mailfromd.texi b/doc/mailfromd.texi
index 05c9e839..d28915f9 100644
--- a/doc/mailfromd.texi
+++ b/doc/mailfromd.texi
@@ -339,7 +339,6 @@ Configuring @command{mailfromd}
* conf-priv:: Privilege Configuration
* conf-database:: Database Configuration
* conf-runtime:: Runtime Constants
-* conf-other:: Other Configuration Statements
* conf-mailutils:: Standard Mailutils Statements
@command{Mailfromd} Command Line Syntax
@@ -471,38 +470,38 @@ possibilities.
After a short run on my mail servers, I discovered that the utility
was not flexible enough. It took less than a month to implement a
-configuration file that allowed to control program and data flow
+configuration file that allowed the user to control program and data flow
during the @samp{envfrom} @acronym{SMTP} state. The new version, 1.0,
appeared in June, 2005.
- The next major release, 1.2 (1.1 contained mostly bugfixes),
-appeared two months later, which introduced @dfn{mail sending rate}
+ Next major release, 1.2 (1.1 contained mostly bugfixes),
+appeared two months later, and introduced @dfn{mail sending rate}
control (@pxref{Rate Limit}).
- The program evolved during the next year, which led to the
-release of version 2.0 in September, 2006. This version was a major
-change in the main idea of the program. Configuration file become a
-flexible filter script allowing to control almost all @acronym{SMTP}
-states. The program supplied in the script file
-was compiled into a pseudo-code at startup, this code being subsequently
-evaluated each time the filter was invoked. This caused a considerable
-speed-up in comparison with the previous versions, where the run-time
-evaluator was traversing the parse tree. This version also introduced
-(implicitly, at the time), two separate data types for the entities
-declared in the script, which also played its role in the speed
-improvement (in the previous versions all data were considered
-strings). Lots of improvements were made in the filter language
-(@acronym{MFL}, @pxref{MFL}) itself, such as user-defined functions,
-@code{switch} statement, @code{catch} statement that allows to handle
-run-time errors, etc. The set of built-in functions extended
-considerably. A testsuite (using @i{DejaGNU}) was introduced in this version.
+ The program evolved during the next year, and the version 2.0 was
+released in September, 2006. This version was a major change in the
+main idea of the program. Configuration file become a flexible filter
+script allowing the operator to control almost all @acronym{SMTP} states. The
+program supplied in the script file was compiled into a pseudo-code at
+startup, this code being subsequently evaluated each time the filter
+was invoked. This caused a considerable speed-up in comparison with
+the previous versions, where the run-time evaluator was traversing the
+parse tree. This version also introduced (implicitly, at the time),
+two separate data types for the entities declared in the script, which
+also played its role in the speed improvement (in the previous
+versions all data were considered strings). Lots of improvements were
+made in the filter language (@acronym{MFL}, @pxref{MFL}) itself, such
+as user-defined functions, the @code{switch} statement, the @code{catch}
+statement for handling run-time errors, etc. The set of
+built-in functions extended considerably. A testsuite (using
+@i{DejaGNU}) was introduced in this version.
During this initial development period the limitations
imposed by @command{libmilter} implementation became obvious. Finally,
I felt they were stopping further development, and decided
that @command{mailfromd} should use its own @samp{Milter}
implementation. This new library, @command{libgacopyz} was the main
-new feature of the 3.0 release, that was released in November, 2006.
+new feature of the 3.0 release, which was released in November, 2006.
Another major feature was the @option{--dump-macros} option and
@option{macros} to @command{rc.mailfromd} script, that were intended
to facilitate the configuration on @samp{Sendmail} side.
@@ -521,7 +520,7 @@ eliminated many run-time errors. This version also provided a
foundation for @acronym{MFL} module system. The code generation
was re-implemented to facilitate introduction of object files in
future versions. Another new features in this release include
-@acronym{SPF} support and @command{mtasim} utility, an @acronym{MTA}
+@acronym{SPF} support and @command{mtasim} utility --- an @acronym{MTA}
simulator designed for testing @command{mailfromd} scripts
(@pxref{mtasim}). The test suite in this version was made portable by
rewriting it in @i{Autotest}.
@@ -541,9 +540,9 @@ a full-fledged modular system, akin to that of Python, and quite a few
improvements to the language. such as explicit type casts,
concatenation operator, static variables, etc.
- Starting from version 7.0, main focus of further development of
-@command{mailfromd} has shifted. While previously it was regarded
-as a mail-filtering server, now it is being developed as a system for
+ Starting from version 7.0, the focus of further development of
+@command{mailfromd} has shifted. While previously it had been regarded
+as a mail-filtering server, since then it was developed as a system for
extending @acronym{MTA} functionality in the broad sense, mail
filtering being only one of features it provides.
@@ -6468,10 +6467,6 @@ returns true. Otherwise, its result is false.
returns true only if any of the @samp{MX}s for (domain or email) @var{x}
match the globbing pattern @var{y}.
- These operators examine at most @value{MAX_DNS_MX} @samp{MX}
-records. To change this limit, use the @code{max-match-mx}
-configuration statement (@pxref{conf-other, max-match-mx}).
-
Both @code{mx matches} and @code{mx fnmatches} can signal the
following exceptions: @code{e_temp_failure}, @code{e_failure}.
@@ -9088,7 +9083,6 @@ program calloutd @{
* conf-priv:: Privilege Configuration
* conf-database:: Database Configuration
* conf-runtime:: Runtime Constants
-* conf-other:: Other Configuration Statements
* conf-mailutils:: Standard Mailutils Statements
@end menu
@@ -9532,11 +9526,6 @@ setvar mailfrom_address @var{string};
@end smallexample
@end deffn
-@deffn {Mailfromd Conf} max-callout-mx number
- Sets the maximum number of MXs to be polled during a callout
-verification. Defaults to @value{MAX_DNS_MX}.
-@end deffn
-
@deffn {Mailfromd Conf} enable-vrfy bool
@cindex VRFY, SMTP statement
Enables the use of SMTP VRFY statement prior to normal callout
@@ -9680,34 +9669,6 @@ using the @code{mailbox_get_message} function. @xref{Message
functions}, for details.
@end deffn
-@deffn {runtime} max-dns-reply-a number
-Sets the maximum number of @acronym{DNS} @samp{A} records to be
-returned in a reply. This affects the @code{dns_getaddr} function
-(@pxref{DNS functions, dns_getaddr}). The default value is @value{MAX_DNS_A}.
-@end deffn
-
-@deffn {runtime} max-dns-reply-ptr number
-Sets the maximum number of @acronym{DNS} @samp{PTR} records to be
-returned in a reply. This affects the @code{dns_getname} function
-(@pxref{DNS functions, dns_getname}). The default value is @value{MAX_DNS_PTR}.
-@end deffn
-
-@deffn {runtime} max-dns-reply-mx number
-Sets the maximum number of @acronym{DNS} @samp{MX} records to be
-returned in a reply. This affects the following functions:
-@code{getpx}, @code{ismx}, @code{primitive_mx}
-(@pxref{DNS functions}). The default value is @value{MAX_DNS_MX}.
-@end deffn
-
-@node conf-other
-@section Other Configuration Statements
-
-@deffn {Mailfromd Conf} max-match-mx number
-Sets the maximum number of MXs to use in @samp{mx matches} operations
-(@pxref{mx matches}). Defaults to @value{MAX_DNS_MX}.
-@end deffn
-
-
@node conf-mailutils
@section Standard Mailutils Statements

Return to:

Send suggestions and report system problems to the System administrator.