[Greylist-users] Multiple milters

Evan Harris eharris at puremagic.com
Tue Jan 6 10:37:35 PST 2004


Because of the way milters work, the validation is (can be) a multi-step
check.  Callbacks to the milter may be done at each step of the mail
transaction.  Mail is passed if no milter says to block the mail at any step
of the way.  Because of this, you can't really have a milter that is totally
bypassed until some other milter fully checks the message.

But what you can say is that the greylist milter always gets the first
chance to block the message.  If the message fails the greylist checks at
some point along the way and gets rejected, then sendmail will not issue any
more checks to any other milter.  However earlier stages of milter
processing will have already happened.

In sendmail, the milters are checked in the order they are defined in the
config.  So if you want greylisting to always have the first shot, define it
as the first milter, and make sure your other milter doesn't do anything
until the eom callback (greylisting is guaranteed to have blocked it before
then if it is going to).

Evan

On Tue, 6 Jan 2004, Ricardo Kirkner wrote:

> Hi:
>
> I want to use several milters simultaneously, where greylisting is one
> of them.
>
> I have the following scenario:
>
> Milter A
> Milter B (greylisting)
>
> I want that the Milter B is always called, but when Milter B lets the
> mail pass, then should the Milter A be called and in no other
> circumstances.
>
> I want to call Milter A only when Milter B succeeds... so how can I
> enforce this?
>
> Ricardo Kirkner



More information about the Greylist-users mailing list