> There's a rational basis for an exception for 5xx before MAIL FROM, > when the target only has the connection parameters and HELO > name to use as a basis for rejection
Unfortunately, Google, in the case of an outright IP-based block, doesn't reject the message until after DATA has been submitted. After wrestling with this for a few days, my solution to mitigate some fallout from host-based rejections is a router condition that allows me to easily avoid routing to problematic domains while the issue is resolved. (The router after this sends everything through the ESP.) FIRST_MX_HOST = ${extract{2}{ \n}{${lookup dnsdb{mx=$domain}{$value}}}{$value}fail} r_direct: driver = dnslookup transport = t_smtp domains = ! +local_domains condition = first_delivery condition = ${if !eq{$return_path}{}} condition = ${lookup {FIRST_MX_HOST}nwildlsearch{/etc/exim/force-esp-mxhosts}{false}{true}} ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 Two questions for the experts: - Is there a more efficient way to achieve this? - Does Exim have a mechanism to invoke a script with rejected messages, so I can either re-send the message or add the host to my force-esp-mxhosts? Thanks! Lance -- ## List details at https://lists.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://wiki.exim.org/