On Fri, May 22, 2026 at 02:57:07PM +0530, Rajesh Mishra via Postfix-users wrote:

> TCP lookup tables (tcp:) send the full recipient address to the daemon exactly
> once. They do not attempt the multi-form lookups (user+ext@domain, 
> user@domain,
> @domain) that indexed maps perform. This means my TCP daemon on port 9926 is
> solely responsible for handling plus-addressing, catchalls, and alias-domain
> canonicalisation — Postfix will not retry with a stripped or rewritten key.

Nothing precludes A TCP daemon, a PCRE table, or a policy service from
examining addresses parts and making a decision based on its various
components.

> One thing I want to confirm: setting virtual_mailbox_maps = <empty> while
> keeping smtpd_reject_unlisted_recipient = yes does NOT give us what we want —
> it disables the recipient check entirely rather than rejecting unknowns.  So 
> an
> empty map is not the right answer.

There's no reason to solve non-problems.  Let a "reduntant" lookup
happen, it is not redundant for others, and harmless in your case.

>   --- Questions ---
> 
>   1. For Design A: is there any scenario where Postfix would still consult
>      virtual_mailbox_maps for something other than 
> smtpd_reject_unlisted_recipient
>      validation? For example during cleanup, queue re-injection, or virtual(8)
>      delivery triggered by some other path?

The virtual(8) delivery agent uses the table to determine where the
mailbox is stored.

-- 
    Viktor.  🇺🇦 Слава Україні!
_______________________________________________
Postfix-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to