Logging: support +outgoing_port on defer lines and per-host error lines
[exim.git] / test / confs / 0001
CommitLineData
afda344b
PH
1# Exim test configuration 0001
2
3# This configuration sets every option that is not dependent on optional code
4# in the binary, except for exim_user and exim_group, because setting them can
5# mess up the creation of the spool directory etc.
6
7exim_path = EXIM_PATH
8host_lookup_order = bydns
afda344b
PH
9spool_directory = DIR/spool
10log_file_path = DIR/spool/log/%slog
11gecos_pattern = ""
12gecos_name = CALLER_NAME
13
14
9cbad13b 15no_accept_8bitmime
afda344b
PH
16acl_not_smtp = check_local_message
17acl_smtp_auth = check_auth
18acl_smtp_connect = check_connect
19acl_smtp_data = check_message
20acl_smtp_etrn = check_etrn
21acl_smtp_expn = check_expn
22acl_smtp_helo = check_helo
23acl_smtp_mail = check_mail
24acl_smtp_mailauth = check_mailauth
25acl_smtp_quit = check_quit
26acl_smtp_predata = check_predata
27acl_smtp_rcpt = check_recipient
28acl_smtp_vrfy = check_vrfy
29admin_groups = 1234
30allow_mx_to_ip
31allow_utf8_domains
32auth_advertise_hosts = a.a.h
33auto_thaw = 1d
34bi_command =
35bounce_message_file =
36bounce_message_text =
37bounce_return_body = false
38no_bounce_return_message
39return_size_limit = 12K
40bounce_return_size_limit = 10K
41callout_domain_negative_expire = 1h
42callout_domain_positive_expire = 1d
43callout_negative_expire = 5h
44callout_positive_expire = 1w
45callout_random_local_part = xxx\
46 xx
47check_log_inodes = 0
48check_log_space = 0
49check_spool_inodes = 0
50check_spool_space = 0
51daemon_smtp_port =
52daemon_smtp_ports =
53daemon_startup_retries = 3
54daemon_startup_sleep = 8s
55delay_warning = 1d
56delay_warning_condition = ${if match{$h_precedence:}{(?i)bulk|list}{no}{yes}}
57deliver_drop_privilege
58deliver_queue_load_max = 6.2
59delivery_date_remove
60dns_again_means_nonexist = *.esri.com:jeni.com
61dns_check_names_pattern = ^.*$
62dns_ipv4_lookup = *
63dns_retrans = 0s
64dns_retry = 0
65drop_cr
66envelope_to_remove
67errors_copy =
68errors_reply_to = postmaster@cam.ac.uk
69extra_local_interfaces = 1.2.3.4
70no_extract_addresses_remove_arguments
71finduser_retries = 0
72allow_domain_literals
73freeze_tell = postmaster
74headers_charset = UTF-8
75header_maxsize = 2M
76header_line_maxsize = 2K
77helo_accept_junk_hosts =
78helo_allow_chars = _
79helo_lookup_domains =
80helo_verify_hosts = localhost
81helo_try_verify_hosts = 1.2.3.4
82hold_domains =
83host_lookup = a.b.c.d
84host_reject_connection = 10.9.8.7
85hosts_connection_nolog = 127.0.0.1
86hosts_treat_as_local =
87ignore_bounce_errors_after = 2m
88ignore_fromline_hosts = a.b.c.d
89ignore_fromline_local
90keep_malformed = 4d
91no_local_from_check
92local_from_prefix = *-
93local_from_suffix = =*
94local_interfaces =
95local_scan_timeout = 10s
96local_sender_retain
97localhost_number = "3 "
98log_selector = \
99 +address_rewrite \
100 -all \
101 +all_parents \
102 +arguments \
103 -connection_reject \
104 -delay_delivery \
105 +incoming_interface \
106 +incoming_port \
107 +lost_incoming_connection \
108 -queue_run \
109 +received_recipients \
110 +received_sender \
111 -retry_defer \
112 +return_path_on_delivery \
113 +sender_on_delivery \
114 +size_reject \
115 -skip_delivery \
116 +smtp_confirmation \
117 +smtp_connection \
118 +smtp_syntax_error \
119 +subject \
120 +tls_cipher \
121 +tls_peerdn
122log_timezone
123lookup_open_max = 16
124max_username_length = 8
125message_body_visible = 500
126message_id_header_domain = a.b.c
127message_id_header_text = x.y.z
128no_message_logs
129message_size_limit = 500K
130mua_wrapper
131never_users = root:0
132percent_hack_domains =
133pipelining_advertise_hosts = *.b.c
134pid_file_path = /some/thing
135no_preserve_message_logs
136primary_hostname = some.host.name
137no_print_topbitchars
138process_log_path = /a/b/c/d
139prod_requires_admin
140qualify_domain = some.dom.ain
141qualify_recipient = some.dom.ain
142queue_domains = a.b.c
143queue_list_requires_admin
144no_queue_only
145no_queue_only_override
146queue_only_file = /var/spool/exim/queue_only
147queue_only_load = 8.2
148no_queue_run_in_order
149queue_run_max = 5
150queue_smtp_domains = x.y.z
151receive_timeout = 0s
152received_header_text = Received: ${if def:sender_rcvhost {from ${sender_rcvhost}\n\t}{${if def:sender_ident {from ${sender_ident} }}${if def:sender_helo_name {(helo=${sender_helo_name})\n\t}}}}by ${primary_hostname} ${if def:received_protocol {with ${received_protocol}}} (Exim ${version_number} #${compile_number})\n\tid ${message_id}${if def:received_for {\n\tfor $received_for}}
153received_headers_max = 30
154recipient_unqualified_hosts = localhost:some.host.name
155recipients_max = 0
156no_recipients_max_reject
157remote_max_parallel = 1
158remote_sort_domains =
159retry_data_expire = 24h
944a9c55 160retry_interval_max = 3d
afda344b
PH
161return_path_remove
162rfc1413_hosts =
163sender_unqualified_hosts = localhost:some.host.name
164smtp_accept_keepalive
165smtp_accept_max = 20
166smtp_accept_max_nonmail = 40
167smtp_accept_max_nonmail_hosts = ! *.b.c
168smtp_accept_max_per_connection = 20
169smtp_accept_max_per_host = 4
170smtp_accept_queue = 0
171smtp_accept_queue_per_connection = 10
172smtp_active_hostname = x.y.z
173no_smtp_enforce_sync
174smtp_max_synprot_errors = 11
175smtp_max_unknown_commands = 10
176smtp_ratelimit_hosts = *
177smtp_ratelimit_mail = 1, 1s, 2, 10s
178smtp_ratelimit_rcpt = 10, 2s, 5, 5m
179smtp_accept_reserve = 0
180smtp_banner = ${primary_hostname} ESMTP Exim ${version_number} #${compile_number} ${tod_full}
181smtp_check_spool_space
182smtp_connect_backlog = 5
183smtp_etrn_command =
184smtp_etrn_serialize
185smtp_load_reserve = 2
186smtp_receive_timeout = 1m
187smtp_reserve_hosts =
188smtp_return_error_details
189no_split_spool_directory
190no_strip_excess_angle_brackets
191no_strip_trailing_dot
192no_syslog_duplication
193syslog_facility = uucp
194syslog_processname = mta-exim
195no_syslog_timestamp
196system_filter = /home/exim/test/filter
197system_filter_directory_transport =
198system_filter_file_transport =
199system_filter_group = mail
200system_filter_pipe_transport =
201system_filter_reply_transport =
202system_filter_user = 99
203tcp_nodelay = false
204timeout_frozen_after = 7d
205timezone = EDT
23f3dc67 206tls_advertise_hosts =
afda344b
PH
207trusted_groups = 42
208trusted_users = ${readfile{DIR/aux-fixed/TESTNUM.trusted}{:}}
209unknown_login = unknownlogin
210unknown_username = Exim Testing
211untrusted_set_sender = *
212uucp_from_pattern = ^From\s+(\S+)\s+(?:[a-zA-Z]{3},?\s+)?(?:[a-zA-Z]{3}\s+\d?\d|\d?\d\s+[a-zA-Z]{3}\s+\d\d(?:\d\d)?)\s+\d\d?:\d\d?
213uucp_from_sender = $1
214warn_message_file = /home/exim/test/warnmsg_file
215write_rejectlog = false
216
217
218# ----- Routers -----
219
220begin routers
221
222# The manualroute router
223
224manualroute:
225 driver = manualroute
226 address_data = domainlist address data
227 cannot_route_message = can't route this address
228 caseful_local_part
229 condition =
230 debug_print =
231 disable_logging
232 domains =
233 errors_to =
234 no_fail_verify_recipient
235 no_fail_verify_sender
236 fallback_hosts = localhost
237 group = mail
238 headers_add =
239 headers_remove =
240 host_find_failed = freeze
241 hosts_randomize
242 no_initgroups
243 local_parts =
244 more
245 no_pass_on_timeout
246 pass_router = manualroute2
247 redirect_router = manualroute2
248 require_files =
249 route_data = ${lookup{$local_part}lsearch{/}}
250 router_home_directory = /usr
251 self = freeze
252 senders =
253 transport = smtp
254 no_unseen
255 user = root
256 no_verify_only
257 verify_recipient
258 verify_sender
259
260# Manualroute2 router, for mutually exclusive options
261
262manualroute2:
263 driver = manualroute
264 domains = ! +local_domains
265 route_list = ^fax(\.cl(\.cam(\.ac\.uk)?)?)?$ cl.cam.ac.uk; \
266 *.uucp britain.eu.net
267
268# The redirect router, in "alias" mode
269
270alias:
271 driver = redirect
272 address_data = aliasfile address data
273 allow_fail
274 allow_freeze
275 caseful_local_part
276 no_check_ancestor
277 condition =
278 data = ${lookup{$local_part}lsearch{/etc/aliases}}
279 debug_print =
280 directory_transport = dummy
281 domains =
282 errors_to =
283 expn
284 no_fail_verify_recipient
285 no_fail_verify_sender
286 fallback_hosts =
287 file_transport = dummy
288 forbid_blackhole
289 no_forbid_file
290 forbid_include
291 no_forbid_pipe
292 group = 100
293 headers_add =
294 headers_remove =
295 hide_child_in_errmsg
296 include_directory = /i/n/c
297 no_initgroups
298 local_part_prefix =
299 no_local_part_prefix_optional
300 local_part_suffix =
301 no_local_part_suffix_optional
302 local_parts =
303 more
304 no_one_time
305 pipe_transport = dummy
306 no_qualify_preserve_domain
307 no_repeat_use
308 qualify_domain = xxxx
309 redirect_router = aliasfile2
310 require_files =
311 retry_use_local_part
312 no_rewrite
313 senders =
314 sieve_vacation_directory = /thing/thong
315 sieve_subaddress = rhubarb
316 sieve_useraddress = custard
317 no_skip_syntax_errors
318 syntax_errors_to =
319 transport_current_directory =
320 transport_home_directory =
321 no_unseen
322 user = 100
323 no_verify_only
324 verify_recipient
325 verify_sender
326
327# Aliasfile2 for mutually exclusive options
328
329aliasfile2:
330 driver = redirect
331 allow_defer
332 caseful_local_part
333 check_group
334 check_owner
335 file = /some/file
336 retry_use_local_part
337
338# The redirect router in "forward" mode
339
340forward:
341 driver = redirect
342 allow_filter
343 forbid_exim_filter
344 forbid_sieve_filter
345 caseful_local_part
346 check_ancestor
347 check_local_user
348 condition =
349 debug_print =
350 directory_transport = dummy
351 domains =
352 errors_to =
353 expn
354 no_fail_verify_recipient
355 no_fail_verify_sender
356 fallback_hosts =
357 file = //.forward2
358 file_transport = dummy
359 no_forbid_file
360 forbid_blackhole
361 forbid_filter_existstest
362 no_forbid_filter_logwrite
363 forbid_filter_dlfunc
364 forbid_filter_lookup
365 forbid_filter_readfile
366 forbid_filter_readsocket
367 forbid_filter_reply
368 forbid_filter_run
369 no_forbid_include
370 no_forbid_pipe
371 group = mail
372 headers_add =
373 headers_remove =
374 hide_child_in_errmsg
375 no_ignore_eacces
376 no_ignore_enotdir
377 no_initgroups
378 local_part_prefix = xxx-
379 local_part_prefix_optional
380 local_part_suffix =
381 no_local_part_suffix_optional
382 local_parts =
383 modemask = 022
384 more
385 no_one_time
386 owners = root
387 owngroups = mail
388 pipe_transport = dummy
389 no_qualify_preserve_domain
390 redirect_router = aliasfile2
391 reply_transport = dummy
392 require_files =
393 rewrite
394 senders =
395 no_skip_syntax_errors
396 syntax_errors_text = rhubarb
397 syntax_errors_to =
398 transport_current_directory =
399 transport_home_directory =
400 no_unseen
401 user = root
402 no_verify_only
403 no_verify_recipient
404 no_verify_sender
405
406# The accept router
407
408localuser:
409 driver = accept
410 no_address_test
411 caseful_local_part
412 check_local_user
413 condition =
414 debug_print =
415 domains =
416 errors_to =
417 expn
418 no_fail_verify_recipient
419 no_fail_verify_sender
420 fallback_hosts =
421 group = mail
422 headers_add = X-added: by localuser
423 headers_remove =
424 no_initgroups
425 local_part_prefix =
426 no_local_part_prefix_optional
427 local_part_suffix =
428 no_local_part_suffix_optional
429 local_parts =
430 no_log_as_local
431 more
432 redirect_router = smartuser
433 require_files =
434 senders =
435 transport = ${if eq{$local_part}{caller}{local_mbx_delivery}{local_delivery}}
436 transport_current_directory =
437 transport_home_directory =
438 no_unseen
439 user = 99
440 no_verify_only
441 verify_recipient
442 verify_sender
443
444# The redirect router in "smartuser" mode
445
446smartuser:
447 driver = redirect
448 caseful_local_part
449 condition =
450 data = user@domain
451 debug_print =
452 domains =
453 errors_to =
454 expn
455 no_fail_verify_recipient
456 no_fail_verify_sender
457 fallback_hosts =
458 file_transport = dummy
459 forbid_file
460 forbid_pipe
461 group = mail
462 headers_add =
463 headers_remove =
464 hide_child_in_errmsg
465 no_initgroups
466 local_part_prefix =
467 no_local_part_prefix_optional
468 local_part_suffix =
469 no_local_part_suffix_optional
470 local_parts = abcd
471 log_as_local
472 more
473 pipe_transport = dummy
474 qualify_preserve_domain
475 redirect_router = localuser
476 require_files =
477 retry_use_local_part
478 no_rewrite
479 senders =
480 no_unseen
481 user = root
482 no_verify_only
483 verify_recipient
484 verify_sender
485
486
487# ----- Transports -----
488
489# Dummy transport, to refer back to
490
491begin transports
492
493dummy:
494 driver = pipe
495 disable_logging
496
497# Appendfile Transport
498
499appendfile:
500 driver = appendfile
501 allow_fifo
502 no_allow_symlink
503 batch_max = 100
504 batch_id = rhubarb
505 body_only
506 no_check_group
507 no_check_owner
508 check_string = abcd
509 create_directory
510 create_file = anywhere
511 current_directory =
512 debug_print =
513 delivery_date_add
514 directory_mode = 0700
515 envelope_to_add
516 escape_string = xyz
517 file = /home/$local_part/inbox
518 file_format = "From : appendfile"
519 no_file_must_exist
520 group = mail
521 headers_add = X-original-domain: $original_domain\nX-original-localp: $original_local_part
522 headers_remove =
523 headers_rewrite = a@b c@d
524 lock_fcntl_timeout = 10s
525 lock_interval = 3s
526 lock_retries = 10
527 lockfile_mode = 0600
528 lockfile_timeout = 30m
529 mailbox_size = 1000
530 mailbox_filecount = 9999
531 message_size_limit = 1M
532 mode = 0600
533 mode_fail_narrower
534 no_notify_comsat
535 message_prefix = From ${if def:return_path{$return_path}{MAILER-DAEMON}} ${tod_bsdinbox}\n
536 quota =
537 no_quota_is_inclusive
538 quota_size_regex = (\d+)$
539 quota_warn_message = "A warning message"
540 quota_warn_threshold =
541 rcpt_include_affixes
542 retry_use_local_part
543 return_path = xxxx
544 return_path_add
545 shadow_condition = $h_return-receipt-to
546 shadow_transport = dummy
547 message_suffix = \n
548 transport_filter =
549 transport_filter_timeout = 10s
550 no_use_crlf
551 use_fcntl_lock
552 use_lockfile
553 user = root
554
555# For options that are mutually exclusive with those above
556
557appendfile2:
558 driver = appendfile
559 directory = /etc
560 directory_file = afilename
561 quota_directory = /some/directory
562 quota = 1M
563 quota_filecount = 10
564 use_bsmtp
565
566# Ditto
567
568appendfile4:
569 driver = appendfile
570 directory = /etc
571
572# Smtp transport
573
574smtp:
575 driver = smtp
576 authenticated_sender = abcde
382afc6b 577 authenticated_sender_force = true
afda344b
PH
578 no_allow_localhost
579 command_timeout = 5m
580 connect_timeout = 0s
581 connection_max_messages = 0
582 data_timeout = 5m
583 debug_print =
584 delay_after_cutoff
585 no_delivery_date_add
586 dns_qualify_single
587 no_dns_search_parents
588 no_envelope_to_add
589 fallback_hosts = localhost
590 final_timeout = 10m
591 no_gethostbyname
592 headers_add =
593 headers_remove =
594 helo_data = some.text
595 hosts = localhost
596 hosts_avoid_esmtp = x.y.z
597 hosts_max_try = 10
598 hosts_max_try_hardlimit = 20
599 hosts_override
600 hosts_randomize
601 hosts_require_auth = *
602 hosts_try_auth = *
603 interface = 127.0.0.1
604 max_rcpt = 0
605 multi_domain
606 port = 25
607 retry_include_ip_address
608 no_return_path_add
609 serialize_hosts =
610 size_addition = -1
611 transport_filter =
612
613# End