Testsuite: avoid indeterminate delivery ordering
[exim.git] / test / confs / 5700
index 0856bb05622e33b234982b686daca4a606ee9f26..031e690b32183da78d3b19c26d5652dc12320e3b 100644 (file)
@@ -1,27 +1,24 @@
 # Exim test configuration 5700
 
-exim_path = EXIM_PATH
-host_lookup_order = bydns
-rfc1413_query_timeout = 0s
-spool_directory = DIR/spool
-log_file_path = DIR/spool/log/%slog
-gecos_pattern = ""
-gecos_name = CALLER_NAME
+.include DIR/aux-var/std_conf_prefix
+
 
 # ----- Main settings -----
 
 acl_smtp_rcpt = accept
 acl_smtp_data = accept
 
+event_action = ${acl {logger}}
+
 
 # ----- ACL -----
 
 begin acl
 
 ev_tcp:
-    accept condition = ${if eq {$tpda_event}{tcp:connect}}
-          logwrite = . [$host_address]:$sending_port
-    accept condition = ${if eq {$tpda_event}{tcp:close}}
+    accept condition = ${if eq {$event_name}{tcp:connect}}
+          logwrite = . [$host_address]:$host_port
+    accept condition = ${if eq {$event_name}{tcp:close}}
           logwrite = . [$sending_ip_address] -> \
                        [$host_address]:$host_port
     accept
@@ -30,45 +27,67 @@ ev_smtp:
     accept
           logwrite = . [$sending_ip_address] -> \
                        [$host_address]:$host_port
-          logwrite = . banner <$tpda_data>
-
-ev_msg:
-    accept condition = ${if !eq {$acl_arg2}{domain1}}
-          logwrite = $this_expansion_will_fail
+          logwrite = . banner <$event_data>
 
-    accept condition = ${if eq {$acl_arg1}{msg:delivery}}
+ev_msg_fail:
+    accept condition = ${if eq {$event_name}{msg:fail:delivery}}
           logwrite = . \
-           delivery \
-           ip <$host_address> \
-           port <$host_port> \
-           fqdn <$host> \
+           refused by fdqn <$host> \
            local_part <$local_part> \
            domain <$domain> \
-           confirmation <$tpda_data> \
-           router <$router_name> \
-           transport <$transport_name>
 
-    accept condition = ${if eq {$acl_arg1}{msg:host:defer}}
-          logwrite = . \
-           deferral \
+    accept logwrite = . \
+           local_part <$local_part> \
+           domain <$domain> \
+           reason <$event_data>
+
+ev_msg_log:
+    accept logwrite = . \
+           $acl_arg1 \
            ip <$host_address> \
            port <$host_port> \
            fqdn <$host> \
            local_part <$local_part> \
            domain <$domain> \
-           errno <$tpda_defer_errno> \
-           errstr <$tpda_data> \
+           $acl_arg2 \
            router <$router_name> \
            transport <$transport_name>
 
+ev_msg:
+    accept condition = ${if eq {fail} {${listextract{2}{$event_name}}}}
+          acl = ev_msg_fail
+
+    accept condition = ${if eq {$event_name}{msg:complete}}
+          logwrite = . finished: $message_exim_id
+
+    accept condition = ${if !eq {$domain}{domain1}}
+          logwrite = $this_expansion_will_fail
+
+    accept condition = ${if eq {$event_name}{msg:delivery}}
+          acl = ev_msg_log delivery "confirmation <$event_data>"
+
+    accept condition = ${if eq {$event_name}{msg:host:defer}}
+          acl = ev_msg_log "host deferral" \
+                       "errno <$event_defer_errno> errstr <$event_data>"
+
+    accept condition = ${if eq {$event_name}{msg:rcpt:defer}}
+          set acl_m_ev_lkup =  ${eval:$event_defer_errno & 0xff}
+          set acl_m_ev_lkup =  ${if = {$acl_m_ev_lkup}{65} {A} \
+                               { ${if = {$acl_m_ev_lkup}{77} {MX} \
+                                 {$acl_m_ev_lkup}}}}
+          set acl_m_ev_code =  4${eval:$event_defer_errno >>8}
+          acl = ev_msg_log "rcpt deferral" \
+                       "err <$event_defer_errno>:<$acl_m_ev_lkup:$acl_m_ev_code> \
+                       errstr <$event_data>"
+
 logger:
-    warn   logwrite = event $tpda_event
-    accept condition = ${if eq {tcp} {${listextract{1}{$tpda_event}}}}
+    warn   logwrite = event $event_name
+    accept condition = ${if eq {tcp} {${listextract{1}{$event_name}}}}
           acl = ev_tcp
-    accept condition = ${if eq {smtp} {${listextract{1}{$tpda_event}}}}
+    accept condition = ${if eq {smtp} {${listextract{1}{$event_name}}}}
           acl = ev_smtp
-    accept condition = ${if eq {msg} {${listextract{1}{$tpda_event}}}}
-          acl = ev_msg $tpda_event $acl_arg2
+    accept condition = ${if eq {msg} {${listextract{1}{$event_name}}}}
+          acl = ev_msg
 
 
 # ----- Routers -----
@@ -85,6 +104,7 @@ others:
   route_list = * 127.0.0.1 byname
   self = send
   transport = smtp
+  errors_to = ""
   no_more
 
 
@@ -97,6 +117,6 @@ smtp:
   port = PORT_S
   command_timeout = 1s
   final_timeout = 1s
-  tpda_event_action =   ${acl {logger} {$tpda_event} {$domain} }
+  event_action =   ${acl {logger}}
 
 # End