Michal Kurka: > > > I need to return SMTP-error to sender server without put in local > > > queue as well as local(8). Is it possible? > > > > No. Postfix delivery is asynchronous. > > http://www.postfix.org/OVERVIEW.html > > I'm viewing "http://www.postfix.org/OVERVIEW.html#delivering". The > local(8) and virtual(8) are at the same level. Why local(8) return > SMTP-error and virtual(8) generate bounce mail?
ALL Postfix delivery agents generate a bounce message upon permanent delivery error. No exceptions. > I tried turn on debug (with debug_peer_level and debug_peer_list). I added > "reject_unverified_recipient" to "smtpd_recipient_restrictions". I see in > maillog that verify(8) tests deliverability using only lookup in > "/etc/postfix/vmailbox", no test execute locdel-transport. This is > logical, because executing a final delivery program causes a delivery > process. ALL Postfix delivery agents generate a "trace" message for address verification. No exceptions. > So how to solve it? There is "address_verify_virtual_transport". May > be use external program for "address_verify_virtual_transport" returning > error if mail is not deliverable. Anyone have experience with this? People use recipient address verification all the time. It works for ALL Postfix delivery agents, without exception. However address verification cannot report errors that can only be discovered by actually delivering mail (mailbox file permission error, command in .forward file does not exist, etc.). It's good for "user unknown" or "host unknown" errors. Wietse