[Mimedefang] Can't filter after last recipient, right?

Jeff Rife mimedefang at nabs.net
Sun Nov 23 17:26:19 EST 2008

On 23 Nov 2008 at 14:27, Kelly Jones wrote:

> I'd like to filter messages after the client has sent the last
> recipient, but before I incur the bandwidth penalty of seeing the
> whole message's DATA stream.
> I don't think I can do that, but wanted to confirm.

It doesn't make sense to even *want* to do this.

Immediately after the "last" recipient, but right before the client 
sends "DATA", you have no more information than you did when processing 
the last recipient, so it can't possibly change your decision on 
whether to reject or continue on with the conversation.  You don't have 
any headers yet, because those are part of the data.

Basically, you need to just put whatever code you want into 
filter_recipient and assume that *every* recipient is the last.  Then, 
the logic to reject or not would come into play.

The only time this wouldn't work is if you have bizarre rules where you 
won't accept an e-mail to "foo at example.com" unless "bar at example.com" is 
also in the list of recipients.  It will work for all cases where you 
won't accept an e-mail if *both* addresses are in the recipient list.

Jeff Rife | "I feel an intense ambivalence, some of which 
          |  doesn't border entirely on the negative." 
          |         -- Ned Dorsey, "Ned and Stacey" 

More information about the MIMEDefang mailing list