diff options
Diffstat (limited to 'doc/mailfromd.texi')
-rw-r--r-- | doc/mailfromd.texi | 89 |
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} | |||
339 | * conf-priv:: Privilege Configuration | 339 | * conf-priv:: Privilege Configuration |
340 | * conf-database:: Database Configuration | 340 | * conf-database:: Database Configuration |
341 | * conf-runtime:: Runtime Constants | 341 | * conf-runtime:: Runtime Constants |
342 | * conf-other:: Other Configuration Statements | ||
343 | * conf-mailutils:: Standard Mailutils Statements | 342 | * conf-mailutils:: Standard Mailutils Statements |
344 | 343 | ||
345 | @command{Mailfromd} Command Line Syntax | 344 | @command{Mailfromd} Command Line Syntax |
@@ -471,38 +470,38 @@ possibilities. | |||
471 | 470 | ||
472 | After a short run on my mail servers, I discovered that the utility | 471 | After a short run on my mail servers, I discovered that the utility |
473 | was not flexible enough. It took less than a month to implement a | 472 | was not flexible enough. It took less than a month to implement a |
474 | configuration file that allowed to control program and data flow | 473 | configuration file that allowed the user to control program and data flow |
475 | during the @samp{envfrom} @acronym{SMTP} state. The new version, 1.0, | 474 | during the @samp{envfrom} @acronym{SMTP} state. The new version, 1.0, |
476 | appeared in June, 2005. | 475 | appeared in June, 2005. |
477 | 476 | ||
478 | The next major release, 1.2 (1.1 contained mostly bugfixes), | 477 | Next major release, 1.2 (1.1 contained mostly bugfixes), |
479 | appeared two months later, which introduced @dfn{mail sending rate} | 478 | appeared two months later, and introduced @dfn{mail sending rate} |
480 | control (@pxref{Rate Limit}). | 479 | control (@pxref{Rate Limit}). |
481 | 480 | ||
482 | The program evolved during the next year, which led to the | 481 | The program evolved during the next year, and the version 2.0 was |
483 | release of version 2.0 in September, 2006. This version was a major | 482 | released in September, 2006. This version was a major change in the |
484 | change in the main idea of the program. Configuration file become a | 483 | main idea of the program. Configuration file become a flexible filter |
485 | flexible filter script allowing to control almost all @acronym{SMTP} | 484 | script allowing the operator to control almost all @acronym{SMTP} states. The |
486 | states. The program supplied in the script file | 485 | program supplied in the script file was compiled into a pseudo-code at |
487 | was compiled into a pseudo-code at startup, this code being subsequently | 486 | startup, this code being subsequently evaluated each time the filter |
488 | evaluated each time the filter was invoked. This caused a considerable | 487 | was invoked. This caused a considerable speed-up in comparison with |
489 | speed-up in comparison with the previous versions, where the run-time | 488 | the previous versions, where the run-time evaluator was traversing the |
490 | evaluator was traversing the parse tree. This version also introduced | 489 | parse tree. This version also introduced (implicitly, at the time), |
491 | (implicitly, at the time), two separate data types for the entities | 490 | two separate data types for the entities declared in the script, which |
492 | declared in the script, which also played its role in the speed | 491 | also played its role in the speed improvement (in the previous |
493 | improvement (in the previous versions all data were considered | 492 | versions all data were considered strings). Lots of improvements were |
494 | strings). Lots of improvements were made in the filter language | 493 | made in the filter language (@acronym{MFL}, @pxref{MFL}) itself, such |
495 | (@acronym{MFL}, @pxref{MFL}) itself, such as user-defined functions, | 494 | as user-defined functions, the @code{switch} statement, the @code{catch} |
496 | @code{switch} statement, @code{catch} statement that allows to handle | 495 | statement for handling run-time errors, etc. The set of |
497 | run-time errors, etc. The set of built-in functions extended | 496 | built-in functions extended considerably. A testsuite (using |
498 | considerably. A testsuite (using @i{DejaGNU}) was introduced in this version. | 497 | @i{DejaGNU}) was introduced in this version. |
499 | 498 | ||
500 | During this initial development period the limitations | 499 | During this initial development period the limitations |
501 | imposed by @command{libmilter} implementation became obvious. Finally, | 500 | imposed by @command{libmilter} implementation became obvious. Finally, |
502 | I felt they were stopping further development, and decided | 501 | I felt they were stopping further development, and decided |
503 | that @command{mailfromd} should use its own @samp{Milter} | 502 | that @command{mailfromd} should use its own @samp{Milter} |
504 | implementation. This new library, @command{libgacopyz} was the main | 503 | implementation. This new library, @command{libgacopyz} was the main |
505 | new feature of the 3.0 release, that was released in November, 2006. | 504 | new feature of the 3.0 release, which was released in November, 2006. |
506 | Another major feature was the @option{--dump-macros} option and | 505 | Another major feature was the @option{--dump-macros} option and |
507 | @option{macros} to @command{rc.mailfromd} script, that were intended | 506 | @option{macros} to @command{rc.mailfromd} script, that were intended |
508 | to facilitate the configuration on @samp{Sendmail} side. | 507 | to facilitate the configuration on @samp{Sendmail} side. |
@@ -521,7 +520,7 @@ eliminated many run-time errors. This version also provided a | |||
521 | foundation for @acronym{MFL} module system. The code generation | 520 | foundation for @acronym{MFL} module system. The code generation |
522 | was re-implemented to facilitate introduction of object files in | 521 | was re-implemented to facilitate introduction of object files in |
523 | future versions. Another new features in this release include | 522 | future versions. Another new features in this release include |
524 | @acronym{SPF} support and @command{mtasim} utility, an @acronym{MTA} | 523 | @acronym{SPF} support and @command{mtasim} utility --- an @acronym{MTA} |
525 | simulator designed for testing @command{mailfromd} scripts | 524 | simulator designed for testing @command{mailfromd} scripts |
526 | (@pxref{mtasim}). The test suite in this version was made portable by | 525 | (@pxref{mtasim}). The test suite in this version was made portable by |
527 | rewriting it in @i{Autotest}. | 526 | rewriting it in @i{Autotest}. |
@@ -541,9 +540,9 @@ a full-fledged modular system, akin to that of Python, and quite a few | |||
541 | improvements to the language. such as explicit type casts, | 540 | improvements to the language. such as explicit type casts, |
542 | concatenation operator, static variables, etc. | 541 | concatenation operator, static variables, etc. |
543 | 542 | ||
544 | Starting from version 7.0, main focus of further development of | 543 | Starting from version 7.0, the focus of further development of |
545 | @command{mailfromd} has shifted. While previously it was regarded | 544 | @command{mailfromd} has shifted. While previously it had been regarded |
546 | as a mail-filtering server, now it is being developed as a system for | 545 | as a mail-filtering server, since then it was developed as a system for |
547 | extending @acronym{MTA} functionality in the broad sense, mail | 546 | extending @acronym{MTA} functionality in the broad sense, mail |
548 | filtering being only one of features it provides. | 547 | filtering being only one of features it provides. |
549 | 548 | ||
@@ -6468,10 +6467,6 @@ returns true. Otherwise, its result is false. | |||
6468 | returns true only if any of the @samp{MX}s for (domain or email) @var{x} | 6467 | returns true only if any of the @samp{MX}s for (domain or email) @var{x} |
6469 | match the globbing pattern @var{y}. | 6468 | match the globbing pattern @var{y}. |
6470 | 6469 | ||
6471 | These operators examine at most @value{MAX_DNS_MX} @samp{MX} | ||
6472 | records. To change this limit, use the @code{max-match-mx} | ||
6473 | configuration statement (@pxref{conf-other, max-match-mx}). | ||
6474 | |||
6475 | Both @code{mx matches} and @code{mx fnmatches} can signal the | 6470 | Both @code{mx matches} and @code{mx fnmatches} can signal the |
6476 | following exceptions: @code{e_temp_failure}, @code{e_failure}. | 6471 | following exceptions: @code{e_temp_failure}, @code{e_failure}. |
6477 | 6472 | ||
@@ -9088,7 +9083,6 @@ program calloutd @{ | |||
9088 | * conf-priv:: Privilege Configuration | 9083 | * conf-priv:: Privilege Configuration |
9089 | * conf-database:: Database Configuration | 9084 | * conf-database:: Database Configuration |
9090 | * conf-runtime:: Runtime Constants | 9085 | * conf-runtime:: Runtime Constants |
9091 | * conf-other:: Other Configuration Statements | ||
9092 | * conf-mailutils:: Standard Mailutils Statements | 9086 | * conf-mailutils:: Standard Mailutils Statements |
9093 | @end menu | 9087 | @end menu |
9094 | 9088 | ||
@@ -9532,11 +9526,6 @@ setvar mailfrom_address @var{string}; | |||
9532 | @end smallexample | 9526 | @end smallexample |
9533 | @end deffn | 9527 | @end deffn |
9534 | 9528 | ||
9535 | @deffn {Mailfromd Conf} max-callout-mx number | ||
9536 | Sets the maximum number of MXs to be polled during a callout | ||
9537 | verification. Defaults to @value{MAX_DNS_MX}. | ||
9538 | @end deffn | ||
9539 | |||
9540 | @deffn {Mailfromd Conf} enable-vrfy bool | 9529 | @deffn {Mailfromd Conf} enable-vrfy bool |
9541 | @cindex VRFY, SMTP statement | 9530 | @cindex VRFY, SMTP statement |
9542 | Enables the use of SMTP VRFY statement prior to normal callout | 9531 | Enables the use of SMTP VRFY statement prior to normal callout |
@@ -9680,34 +9669,6 @@ using the @code{mailbox_get_message} function. @xref{Message | |||
9680 | functions}, for details. | 9669 | functions}, for details. |
9681 | @end deffn | 9670 | @end deffn |
9682 | 9671 | ||
9683 | @deffn {runtime} max-dns-reply-a number | ||
9684 | Sets the maximum number of @acronym{DNS} @samp{A} records to be | ||
9685 | returned in a reply. This affects the @code{dns_getaddr} function | ||
9686 | (@pxref{DNS functions, dns_getaddr}). The default value is @value{MAX_DNS_A}. | ||
9687 | @end deffn | ||
9688 | |||
9689 | @deffn {runtime} max-dns-reply-ptr number | ||
9690 | Sets the maximum number of @acronym{DNS} @samp{PTR} records to be | ||
9691 | returned in a reply. This affects the @code{dns_getname} function | ||
9692 | (@pxref{DNS functions, dns_getname}). The default value is @value{MAX_DNS_PTR}. | ||
9693 | @end deffn | ||
9694 | |||
9695 | @deffn {runtime} max-dns-reply-mx number | ||
9696 | Sets the maximum number of @acronym{DNS} @samp{MX} records to be | ||
9697 | returned in a reply. This affects the following functions: | ||
9698 | @code{getpx}, @code{ismx}, @code{primitive_mx} | ||
9699 | (@pxref{DNS functions}). The default value is @value{MAX_DNS_MX}. | ||
9700 | @end deffn | ||
9701 | |||
9702 | @node conf-other | ||
9703 | @section Other Configuration Statements | ||
9704 | |||
9705 | @deffn {Mailfromd Conf} max-match-mx number | ||
9706 | Sets the maximum number of MXs to use in @samp{mx matches} operations | ||
9707 | (@pxref{mx matches}). Defaults to @value{MAX_DNS_MX}. | ||
9708 | @end deffn | ||
9709 | |||
9710 | |||
9711 | @node conf-mailutils | 9672 | @node conf-mailutils |
9712 | @section Standard Mailutils Statements | 9673 | @section Standard Mailutils Statements |
9713 | 9674 | ||