On Sat, 28 Mar 2009, Res wrote:

> On Fri, 27 Mar 2009, Terry Carmen wrote:
>
>>> when f...@example.com SMTP connects to our SMTP, I want the message  
>>> "secretly accepted" (for lack of a better term) but then I want our 
>>> SMTP to,
>>> after accepting, return: 550 service unavailable in their 
>>> transaction, just as if we had set in access: f...@example.com REJECT 
>>> ..to avoid accepting then generating backscatter bounce message which 
>>> is what I can do now in 5 seconds, but I'm trying to avoid that 
>>> despite f...@example.com being a real address that someone reads.
>
>> You want to accept the message, deliver it to the recipient and still 
>> return a 550?
>
> Correct, although recipient is actually a file in this case.
>
>> I'm not sure why anybody would want this, but AFAIK, you can't do it 
>> without modifying postfix or writing a filter.
>
> I gathered I'd most likely need a milter as a few combinations in postfix 
> I tried failed, maybe amavisd has this function? I don't use, but might  
> install it on the server concerned to test, as, although its been many 
> many years since I've used it, or even looked at it, IIRC it acts in this 
> way
> identical to a milter, but I might be wrong since I moved from it back in 
> 02/03 I think

Don't use amavisd-new; it would be overkill for this task.  And from my
cursory understanding of the SMTP protocol, I am not sure your goal is
reachable even with a simple pre-queue filter.  Before passing mail to a
pre-queue filter (or milter), smtpd(8) applies smtpd_mumble_restrictions and
rejects unknown recipients.  So by the time you get to the filter, Postfix
has already replied with "250 2.1.5 Ok" for f...@example.com at the RCPT TO:
stage of the SMTP conversation.  As a result, the client believes
f...@example.com is a valid recipient, defeating the purpose of this exercise.

-- 
Sahil Tandon <sa...@tandon.net>

Reply via email to