Re: [exim] Let the 'postmaster' callout option be damned

Top Page
Delete this message
Reply to this message
Author: David Woodhouse
Date:  
To: Tim Jackson
CC: exim-users
Subject: Re: [exim] Let the 'postmaster' callout option be damned
On Wed, 2004-08-25 at 00:46 +0100, David Woodhouse wrote:
> One alternative I've considered but not yet implemented is to reject the
> DSN-to-postmaster at DATA time instead of at RCPT time. For reasons we
> have to explain quite often, that's hard to implement -- we have to
> temporarily reject certain RCPTs if the response after DATA wouldn't be
> the same for each.


Hmmm. It doesn't have to be as hard as that -- it's sufficient just to
reject at DATA time if it came _only_ to postmaster. If it comes to
postmaster and another recipient you accept it, but that's fairly
unlikely.

I'm not rolling out changes at 1am. But it might look something like
this:

Index: include/acl-content
===================================================================
RCS file: /home/dwmw2/admincvs/eximconf/include/acl-content,v
retrieving revision 1.7
diff -u -p -r1.7 acl-content
--- include/acl-content 19 Aug 2004 13:01:54 -0000      1.7
+++ include/acl-content 25 Aug 2004 00:11:47 -0000
@@ -4,6 +4,12 @@ check_content:
   # No content checking for hosts we trust.
   accept  hosts                = +trust_hosts


+  # Reject DSN if it has gone only to postmaster(s)
+  deny    condition    = ${if eq{$acl_m8}{postmasteronly}{1}}
+         senders       = :
+         message       = No mail is ever sent from the postmaster@ address\n\
+                         So we don't want to see bounces to it either.
+
   # Require a little standards compliance, even from relay_hosts
   require verify       = header_syntax
           message      = Invalid address in message header. Consult RFC2822.
Index: include/acl-recipient
===================================================================
RCS file: /home/dwmw2/admincvs/eximconf/include/acl-recipient,v
retrieving revision 1.14
diff -u -p -r1.14 acl-recipient
--- include/acl-recipient       16 Aug 2004 13:05:20 -0000      1.14
+++ include/acl-recipient       25 Aug 2004 00:11:47 -0000
@@ -12,6 +12,7 @@ check_recipient:


   accept  local_parts  = postmaster
           domains      = +local_domains : +relay_domains : +virtual_domains
+         set acl_m8    = ${if eq{$acl_m8}{}{postmasteronly}{$acl_m8}}


   # Now we check for underscores in HELO and make it bounce.
   deny    condition = ${if match{$sender_helo_name}{_}{1}}
@@ -130,4 +131,4 @@ check_recipient:
   deny     hosts       = !+trust_hosts
            !verify     = sender/callout=70s,random,postmaster


- accept
+ accept set acl_m8 = non-postmaster

--
dwmw2