Fix listing a named queue by a non-admin user. Bug 2398
[exim.git] / test / confs / 4201
index 3b87cd5fcf93726db3cdc4a3f14dba2cc191f72c..17afe9f782fcf8f48f5e08477c6e5ddc893c5ac2 100644 (file)
@@ -1,37 +1,69 @@
 # Exim test configuration 4201
 # Exim test configuration 4201
+# SMTPUTF8 handling
+
+OPTION = *
+CONTROL =
+INSERT =
+SUB =
+
+.include DIR/aux-var/std_conf_prefix
 
 
-exim_path = EXIM_PATH
-host_lookup_order = bydns
-spool_directory = DIR/spool
-log_file_path = DIR/spool/log/%slog
-gecos_pattern = ""
-gecos_name = CALLER_NAME
 
 # ----- Main settings -----
 
 
 # ----- Main settings -----
 
-domainlist local_domains = test.ex
+domainlist local_domains = test.ex : cname
 
 acl_smtp_rcpt = check_recipient
 
 acl_smtp_rcpt = check_recipient
+acl_not_smtp = non_smtp
+
 trusted_users = CALLER
 trusted_users = CALLER
-log_selector = +received_recipients
+log_selector = +received_recipients +sender_on_delivery
 
 .ifdef SERVER
 queue_only
 queue_run_in_order
 .endif
 
 
 .ifdef SERVER
 queue_only
 queue_run_in_order
 .endif
 
-smtputf8_advertise_hosts = *
+smtputf8_advertise_hosts = OPTION
+
+SUB
 
 
 # ----- ACL -----
 
 begin acl
 
 
 
 # ----- ACL -----
 
 begin acl
 
+
+.ifdef SERVER
+
 check_recipient:
   accept hosts = :
   accept domains = +local_domains
 check_recipient:
   accept hosts = :
   accept domains = +local_domains
+        local_parts = ^(xn--)?user.*\$
   deny   message = relay not permitted
 
   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
 # ----- Routers -----
 
 begin routers
@@ -43,14 +75,32 @@ fail_remote_domains:
   domains = ! +local_domains
   data = :fail: unrouteable mail domain "$domain"
 
   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
 
 localuser:
   driver = redirect
   data = :blackhole:
 
 .else
 
+bounces:
+  driver = redirect
+  domains = *.local
+  data = DIR/test-mail/$local_part
+  file_transport = local_delivery
+
+redir:
+  driver = redirect
+  local_parts = ^z
+  data  =      ${substr_1:$local_part}@$domain
+
 rmt:
   driver = manualroute
 rmt:
   driver = manualroute
+  domains = +local_domains
   route_data = <;[127.0.0.1]:PORT_D
   transport = rmt_smtp
   self = send
   route_data = <;[127.0.0.1]:PORT_D
   transport = rmt_smtp
   self = send
@@ -63,6 +113,7 @@ begin transports
 
 local_delivery:
   driver = appendfile
 
 local_delivery:
   driver = appendfile
+  user = CALLER
   delivery_date_add
   envelope_to_add
   file = DIR/test-mail/$local_part
   delivery_date_add
   envelope_to_add
   file = DIR/test-mail/$local_part
@@ -73,5 +124,8 @@ local_delivery:
 
 rmt_smtp:
   driver = smtp
 
 rmt_smtp:
   driver = smtp
+.ifdef STRICT
+  utf8_downconvert = STRICT
+.endif
 
 # End
 
 # End