eximconf: only treat @d.o addresses as eligible for default options
authorAdam D. Barratt <adam@adam-barratt.org.uk>
Mon, 21 Oct 2019 21:45:14 +0000 (22:45 +0100)
committerAdam D. Barratt <adam@adam-barratt.org.uk>
Fri, 25 Oct 2019 16:32:17 +0000 (17:32 +0100)
Service domains have no way of opting out of the settings, so don't
forcibly opt them in

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
modules/exim/templates/eximconf.erb

index be53a54..4001554 100644 (file)
@@ -307,7 +307,11 @@ GREYLIST_LOCAL_PARTS = ${if match_domain{$domain}{+virtual_domains}\
                        {${lookup{$local_part}lsearch*{${extract{directory}{VDOMAINDATA}{${value}/grey_users}}}{$local_part}{}}}{}}}\
                        {${lookup{$local_part}lsearch{/etc/exim4/grey_users}{$local_part}{}}}} : \
                        ${lookup{$local_part}lsearch{/var/lib/misc/$primary_hostname/mail-greylist}{$local_part}{}}
-HAS_DEFAULT_OPTIONS  = ${if eq{${lookup{$local_part}dbmnz{/var/lib/misc/$primary_hostname/default-mail-options.db}{$value}{TRUE}}}{TRUE}}
+HAS_DEFAULT_OPTIONS = ${if and {\
+                       {eq{${lookup{$local_part}dbmnz{/var/lib/misc/$primary_hostname/default-mail-options.db}{$value}{TRUE}}}{TRUE}}\
+                       {exists{${extract{directory}{VDOMAINDATA}{${value}/mail-forward.db}}}}\
+                       {! eq {${lookup{$local_part}dbmnz{${extract{directory}{VDOMAINDATA}{${value}/mail-forward.db}}}}}{}}\
+                       }}
 <%- if @is_rtmaster -%>
 # This subject rewrite is embedded in double-quoted strings. As such, some of
 # the items need more escaping than usual, otherwise \N becomes simply "N" and