* Viktor Dukhovni: > I strongly do not recommend using LDAP for per-user transport lookups.
Shame that it does not scale, because it works. I have tried using a combination of LDAP-based virtual_alias_maps and hashed transport_maps as per your suggestion, but have not yet quite achieve the result I am looking for. Let me modify the pseudocode to describe my goal in more detail: x = ldap_lookup_recipient_record(envelope_to_address) if x.has_attribute(alpha) reject_with_code_4xx(message=value_of_attribute(alpha)) else relay_message(nexthop=value_of_attribute(beta)) When I use transport lookups, this is possible, for example by setting attributes alpha="retry:Unavailable" or beta="smtp:[somehost]". I tried to emulate this by using virtual alias lookups which return alpha="pause.domain.tld" or beta="route.domain.tld", combined with a transports hash map containing pause.domain.tld retry:Unavailable route.domain.tld smtp:[somehost] Alas, when I do it this way, Postfix accepts email for users with the alpha attribute and then stores them as deferred in the queue. I need to reject with "4xx Unavailable" instead. I feel like I am close but overlooking something. -Ralph