From: Tollef Fog Heen Date: Sun, 14 Oct 2012 19:21:15 +0000 (+0200) Subject: Avoid literal domainlist in match_domain X-Git-Url: https://git.adam-barratt.org.uk/?p=mirror%2Fdsa-puppet.git;a=commitdiff_plain;h=18696870d08b3c8ba67e7dfc4d58e4745796238c Avoid literal domainlist in match_domain With exim 4.77 and newer, match_domain no longer does string expansion in the second argument, to avoid potentially expensive database lookups and such. Use a named domain list and refer to that instead. Thanks to Andreas Metzler for the heads-up. --- diff --git a/modules/exim/templates/eximconf.erb b/modules/exim/templates/eximconf.erb index 1be6b7e14..9aef94599 100644 --- a/modules/exim/templates/eximconf.erb +++ b/modules/exim/templates/eximconf.erb @@ -115,6 +115,8 @@ domainlist bsmtp_domains = ${if exists {/etc/exim4/bsmtp}{partial-lsearch;/etc/e domainlist handled_domains = +local_domains : +virtual_domains : +bsmtp_domains +domainlist ourself_and_handled = $primary_hostname : +handled_domains + localpartlist local_only_users = lsearch;/etc/exim4/localusers localpartlist postmasterish = postmaster : abuse : hostmaster @@ -557,7 +559,7 @@ check_recipient: drop !hosts = +debianhosts !acl = acl_spamlovers - condition = ${if match_domain{$sender_helo_name}{$primary_hostname:+handled_domains}} + condition = ${if match_domain{$sender_helo_name}{+ourself_and_handled}} condition = ${if !match{$sender_host_name}{${rxquote:$sender_helo_name}\N$\N}} message = HELO mismatch Forged HELO for ($sender_helo_name)