]> git.donarmstrong.com Git - dsa-puppet.git/commitdiff
Preserve $local_part_suffix when forwarding to master
authorTollef Fog Heen <tfheen@err.no>
Fri, 26 Jul 2013 19:31:24 +0000 (21:31 +0200)
committerTollef Fog Heen <tfheen@err.no>
Fri, 26 Jul 2013 19:31:24 +0000 (21:31 +0200)
modules/exim/templates/eximconf.erb

index 63dfe797cbc4ee13122544efe65dff84313d7ecd..a2cfefce80203e65db750cffed5a8b5372a772bf 100644 (file)
@@ -1438,9 +1438,16 @@ virt_users:
   transport_current_directory = ${extract{directory}{VDOMAINDATA}}
   user = ${extract{user}{VDOMAINDATA}}
   group = ${extract{group}{VDOMAINDATA}}
+  # Manually construct the forwarding address, preserving the
+  # local_part_suffix if the remote host is master.
   data = ${if exists{${extract{directory}{VDOMAINDATA}{${value}/mail-forward.cdb}}}\
-             {${lookup{$local_part}cdb\
-             {${extract{directory}{VDOMAINDATA}{${value}/mail-forward.cdb}}}}}}
+             {${local_part:${lookup{$local_part}cdb\
+             {${extract{directory}{VDOMAINDATA}{${value}/mail-forward.cdb}}}}}\
+             ${if eq {${domain:${lookup{$local_part}cdb\
+             {${extract{directory}{VDOMAINDATA}{${value}/mail-forward.cdb}}}}}}{master.debian.org}{$local_part_suffix} {}}\
+             @\
+             ${domain:${lookup{$local_part}cdb\
+            {${extract{directory}{VDOMAINDATA}{${value}/mail-forward.cdb}}}}}}}
   domains = +virtual_domains
   file_transport = address_file
   headers_add = "Delivered-To: ${local_part}${local_part_suffix}@${domain}"