Fix CVE-2016-1531
[exim.git] / test / confs / 4201
index 3b87cd5fcf93726db3cdc4a3f14dba2cc191f72c..c6f18ed214b51500313c5a84479ba081f93f4d74 100644 (file)
@@ -1,6 +1,13 @@
 # Exim test configuration 4201
+# SMTPUTF8 handling
+
+OPTION = *
+CONTROL =
+INSERT =
+SUB =
 
 exim_path = EXIM_PATH
+keep_environment =
 host_lookup_order = bydns
 spool_directory = DIR/spool
 log_file_path = DIR/spool/log/%slog
@@ -9,29 +16,59 @@ gecos_name = CALLER_NAME
 
 # ----- Main settings -----
 
-domainlist local_domains = test.ex
+domainlist local_domains = test.ex : cname
 
 acl_smtp_rcpt = check_recipient
+acl_not_smtp = non_smtp
+
 trusted_users = CALLER
-log_selector = +received_recipients
+log_selector = +received_recipients +sender_on_delivery
 
 .ifdef SERVER
 queue_only
 queue_run_in_order
 .endif
 
-smtputf8_advertise_hosts = *
+smtputf8_advertise_hosts = OPTION
+
+SUB
 
 
 # ----- ACL -----
 
 begin acl
 
+
+.ifdef SERVER
+
 check_recipient:
   accept hosts = :
   accept domains = +local_domains
+        local_parts = ^(xn--)?user.*\$
   deny   message = relay not permitted
 
+.else
+
+sub:
+.ifdef INSERT
+  require INSERT
+.endif
+.ifdef CONTROL
+  require CONTROL
+.endif
+  accept
+
+check_recipient:
+  accept domains = *
+        acl = sub
+
+non_smtp:
+  accept senders = :
+        control = queue_only
+  accept
+
+.endif
+
 # ----- Routers -----
 
 begin routers
@@ -43,14 +80,27 @@ fail_remote_domains:
   domains = ! +local_domains
   data = :fail: unrouteable mail domain "$domain"
 
+bounces:
+  driver = redirect
+  condition = ${if eq {} {$sender_address}}
+  data = DIR/test-mail/$local_part
+  file_transport = local_delivery
+
 localuser:
   driver = redirect
   data = :blackhole:
 
 .else
 
+bounces:
+  driver = redirect
+  domains = *.local
+  data = DIR/test-mail/$local_part
+  file_transport = local_delivery
+
 rmt:
   driver = manualroute
+  domains = +local_domains
   route_data = <;[127.0.0.1]:PORT_D
   transport = rmt_smtp
   self = send
@@ -63,6 +113,7 @@ begin transports
 
 local_delivery:
   driver = appendfile
+  user = CALLER
   delivery_date_add
   envelope_to_add
   file = DIR/test-mail/$local_part