Wietse Venema:
> /dev/rob0:
> > On Tue, Mar 27, 2012 at 04:10:59PM -0500, I wrote:
> > > On Tue, Mar 27, 2012 at 10:21:14PM +0200, Sebastian Wiesinger wrote:
> > > > I have a setup with handles a few virtual domains. For one domain 
> > > > only I want mails not to be rejected with an 5xx error code but be 
> > > > deferred with a 4xx error code. Is that possible?
> > > 
> > > main.cf :
> > > smtpd_client_restrictions = check_recipient_access
> > >     hash:/etc/postfix/deferred_recipient[, ... ]
> > > 
> > > deferred_recipient :
> > > 
> > > example.com               defer_if_reject
> > > [ ... ]
> > 
> > That of course turns any rejection which comes after this restriction 
> > into a deferral, and that's not quite what you said you want. There 
> > are ways to apply it only to unknown recipients. I would move any 
> > spam-blocking restriction to smtpd_client_restrictions, after any 
> > necessary permit_* restrictions and before check_recipient_access. 
> > Then the unknown recipient rejection, which happens in 
> > smtpd_recipient_restrictions, will be subject to defer_if_reject.
> 
> You will need to specify an explicit "reject_unknown_recipient" at
> the end of smtpd_recipient_restrictions. 

It would be worthwhile if someone can check if this is needed.

        Wietse

> The implicit "unknown recipient" test at the end is not part of
> smtpd_recipient_restrictions, and this implicit test currently does
> not play along with any defer_if features requested from within
> smtpd_recipient_restrictions.
> 
> I suppose this could (should) be changed without breaking things,
> but making this 100% safe will take half a day and I don't have
> that time at the moment.
> 
>       Wietse
> 

Reply via email to