Routing: for efficiency, avoid complexifying the "condition" string until the second...
[users/heiko/exim.git] / test / confs / 5700
index 0e9fd1d3f105179a21829e1f6b3053d0f74e0d05..031e690b32183da78d3b19c26d5652dc12320e3b 100644 (file)
@@ -1,19 +1,14 @@
 # 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
 
-delivery_event_action = ${acl {logger}}
+event_action = ${acl {logger}}
 
 
 # ----- ACL -----
@@ -21,9 +16,9 @@ delivery_event_action = ${acl {logger}}
 begin acl
 
 ev_tcp:
-    accept condition = ${if eq {$tpda_event}{tcp:connect}}
+    accept condition = ${if eq {$event_name}{tcp:connect}}
           logwrite = . [$host_address]:$host_port
-    accept condition = ${if eq {$tpda_event}{tcp:close}}
+    accept condition = ${if eq {$event_name}{tcp:close}}
           logwrite = . [$sending_ip_address] -> \
                        [$host_address]:$host_port
     accept
@@ -32,10 +27,10 @@ ev_smtp:
     accept
           logwrite = . [$sending_ip_address] -> \
                        [$host_address]:$host_port
-          logwrite = . banner <$tpda_data>
+          logwrite = . banner <$event_data>
 
 ev_msg_fail:
-    accept condition = ${if eq {$tpda_event}{msg:fail:delivery}}
+    accept condition = ${if eq {$event_name}{msg:fail:delivery}}
           logwrite = . \
            refused by fdqn <$host> \
            local_part <$local_part> \
@@ -44,50 +39,54 @@ ev_msg_fail:
     accept logwrite = . \
            local_part <$local_part> \
            domain <$domain> \
-           reason <$tpda_data>
+           reason <$event_data>
+
+ev_msg_log:
+    accept logwrite = . \
+           $acl_arg1 \
+           ip <$host_address> \
+           port <$host_port> \
+           fqdn <$host> \
+           local_part <$local_part> \
+           domain <$domain> \
+           $acl_arg2 \
+           router <$router_name> \
+           transport <$transport_name>
 
 ev_msg:
-    accept condition = ${if eq {fail} {${listextract{2}{$tpda_event}}}}
+    accept condition = ${if eq {fail} {${listextract{2}{$event_name}}}}
           acl = ev_msg_fail
 
-    accept condition = ${if eq {$tpda_event}{msg:complete}}
+    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 {$tpda_event}{msg:delivery}}
-          logwrite = . \
-           delivery \
-           ip <$host_address> \
-           port <$host_port> \
-           fqdn <$host> \
-           local_part <$local_part> \
-           domain <$domain> \
-           confirmation <$tpda_data> \
-           router <$router_name> \
-           transport <$transport_name>
+    accept condition = ${if eq {$event_name}{msg:delivery}}
+          acl = ev_msg_log delivery "confirmation <$event_data>"
 
-    accept condition = ${if eq {$tpda_event}{msg:host:defer}}
-          logwrite = . \
-           deferral \
-           ip <$host_address> \
-           port <$host_port> \
-           fqdn <$host> \
-           local_part <$local_part> \
-           domain <$domain> \
-           errno <$tpda_defer_errno> \
-           errstr <$tpda_data> \
-           router <$router_name> \
-           transport <$transport_name>
+    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}}}}
+    accept condition = ${if eq {msg} {${listextract{1}{$event_name}}}}
           acl = ev_msg
 
 
@@ -105,6 +104,7 @@ others:
   route_list = * 127.0.0.1 byname
   self = send
   transport = smtp
+  errors_to = ""
   no_more
 
 
@@ -117,6 +117,6 @@ smtp:
   port = PORT_S
   command_timeout = 1s
   final_timeout = 1s
-  tpda_event_action =   ${acl {logger}}
+  event_action =   ${acl {logger}}
 
 # End