eximconf: add an explanatory comment for default options
[mirror/dsa-puppet.git] / modules / exim / templates / eximconf.erb
index af0e177..5db40f3 100644 (file)
@@ -266,6 +266,7 @@ tls_advertise_hosts = *
 smtp_enforce_sync = true
 
 log_selector = \
+               +subject \
                +tls_cipher \
                +tls_peerdn \
                +queue_time \
@@ -306,7 +307,14 @@ 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}}
+# Users from LDAP can decide whether to subscribe to default filtering.
+# If a user has not explicitly disabled the option, the assumption is in
+# favour of filtering.
+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
@@ -1483,7 +1491,11 @@ virt_direct_verify:
   modemask = 002
   directory_transport = address_directory
   domains = +virtual_domains
+<%- if @is_trackermaster -%>
+  local_part_suffix = +*
+<%- else -%>
   local_part_suffix = -*
+<%- end -%>
   local_part_suffix_optional
   file = $home/.forward-\
               ${if exists {${home}/.forward-${local_part}}{${local_part}}\
@@ -1513,7 +1525,11 @@ virt_direct:
   group = ${extract{group}{VDOMAINDATA}}
   headers_add = "Delivered-To: ${local_part}${local_part_suffix}@${domain}"
   modemask = 002
+<%- if @is_trackermaster -%>
+  local_part_suffix = +*
+<%- else -%>
   local_part_suffix = -*
+<%- end -%>
   local_part_suffix_optional
   pipe_transport = address_pipe
   reply_transport = address_reply