Logging: fix receive-time crash with recipients-logging.
[exim.git] / test / confs / 0900
1 # Exim test configuration 0900
2 SERVER=
3 SRV=
4 LIST=
5 ALLOW=
6
7 exim_path = EXIM_PATH
8 keep_environment =
9 add_environment = SSLKEYLOGFILE=DIR/spool/sslkeys
10 host_lookup_order = bydns
11 spool_directory = DIR/spool
12 log_file_path = DIR/spool/log/SERVER%slog
13 gecos_pattern = ""
14 gecos_name = CALLER_NAME
15 chunking_advertise_hosts = *
16 .ifdef _HAVE_TLS
17 tls_advertise_hosts = ${if eq {SRV}{tls} {*}}
18 .endif
19 .ifdef _HAVE_PIPE_CONNECT
20 pipelining_connect_advertise_hosts = :
21 .endif
22 .ifdef _HAVE_DMARC
23 dmarc_tld_file =
24 .endif
25 .ifdef _OPT_MAIN_LIMITS_ADVERTISE_HOSTS
26 limits_advertise_hosts = !*
27 .endif
28
29 # ----- Main settings -----
30
31 primary_hostname = testhost.test.ex
32 domainlist local_domains = @ : test.ex
33
34 acl_smtp_rcpt = check_recipient
35 .ifdef _HAVE_PRDR
36 acl_smtp_data_prdr = check_prdr
37 .endif
38 acl_smtp_data = check_data
39 trusted_users = CALLER
40 queue_only
41 smtp_receive_timeout = 2s
42
43 .ifdef _HAVE_DKIM
44 log_selector = +received_recipients +connection_id +millisec +dkim_verbose
45 .else
46 log_selector = +received_recipients +connection_id +millisec
47 .endif
48
49 .ifdef _HAVE_TLS
50 tls_certificate = DIR/aux-fixed/cert1
51 .endif
52
53 ALLOW
54
55 # ----- ACL -----
56
57 begin acl
58
59 check_recipient:
60 .ifdef RETRY2
61   drop   condition = ${if eq {SERVER}{server}}
62          message = 550 we really do not like you
63 .endif
64   accept hosts = :
65   accept domains = +local_domains
66   deny   message = relay not permitted
67
68 check_prdr:
69   accept local_parts = good
70   deny
71
72 check_data:
73   warn   message = X-acl-message-linecount: $message_linecount
74   accept
75
76 # ----- Routers -----
77
78 begin routers
79
80 to_server:
81   driver = accept
82   condition =   ${if !eq {SERVER}{server}}
83   transport =   remote_smtp${if eq {SRV}{dkim} {_dkim}}
84   errors_to =   ""
85
86 fail_remote_domains:
87   driver = redirect
88   domains = ! +local_domains
89   data = :fail: unrouteable mail domain "$domain"
90
91 localuser:
92   driver = accept
93   check_local_user
94   transport = local_delivery
95   headers_add = X-local-user: uid=$local_user_uid gid=$local_user_gid
96
97
98 # ----- Transports -----
99
100 begin transports
101
102 local_delivery:
103   driver = appendfile
104   delivery_date_add
105   envelope_to_add
106   file = DIR/test-mail/$local_part
107   create_file = DIR/test-mail
108   headers_add = "X-body-linecount: $body_linecount\n\
109                  X-message-linecount: $message_linecount\n\
110                  X-received-count: $received_count"
111   return_path_add
112
113 remote_smtp:
114   driver = smtp
115 .ifdef RETRY2
116   hosts =       127.0.0.1 : HOSTIPV4
117 .else
118   hosts =       127.0.0.1
119 .endif
120   port =        PORT_S
121   hosts_try_fastopen = :
122 .ifdef _HAVE_TLS
123   tls_verify_certificates = DIR/aux-fixed/cert1
124   tls_verify_cert_hostnames =
125 .endif
126   allow_localhost
127   command_timeout = 2s
128   final_timeout = 2s
129
130 remote_smtp_dkim:
131   driver = smtp
132   hosts =       127.0.0.1
133   port =        PORT_S
134   hosts_try_fastopen = :
135 .ifdef _HAVE_TLS
136   tls_verify_certificates = DIR/aux-fixed/cert1
137   tls_verify_cert_hostnames =
138 .endif
139   allow_localhost
140   command_timeout = 2s
141   final_timeout = 2s
142
143 .ifdef _HAVE_DKIM
144 .ifdef SRV
145   dkim_domain =         test.ex
146   dkim_selector =       sel
147   dkim_private_key =    DIR/aux-fixed/dkim/dkim.private
148 .ifndef HEADERS_MAXSIZE
149   dkim_sign_headers =   LIST
150 .endif
151 .endif
152 .endif
153
154 # ----- Retry -----
155
156 begin retry
157 * * F,30m,5m;
158 # End