Taint: fix multiple ACL actions to properly manage tainted argument data
[users/jgh/exim.git] / test / confs / 0139
1 # Exim test configuration 0139
2
3 .include DIR/aux-var/std_conf_prefix
4
5
6 # ----- Main settings -----
7
8 domainlist local_domains = exim.test.ex
9 trusted_users = CALLER
10
11 acl_smtp_helo = check_helo
12 acl_smtp_rcpt = check_recipient
13 acl_smtp_mail = check_mail
14 acl_smtp_vrfy = check_vrfy
15
16 # ------ ACL ------
17
18 begin acl
19
20 check_helo:
21   warn    dnslists = rbl2.test.ex!=127.0.0.3 : rbl3.test.ex=127.0.0.3
22   accept
23
24 check_vrfy:
25   warn    dnslists = rbl.test.ex=127.0.0.1
26   warn    dnslists = rbl.test.ex!=127.0.0.1
27   warn    dnslists = rbl.test.ex!=127.0.0.3
28   warn    dnslists = rbl.test.ex==127.0.0.1
29   warn    dnslists = rbl.test.ex==127.0.0.1,127.0.0.2
30   warn    dnslists = rbl.test.ex!==127.0.0.1
31   warn    dnslists = rbl.test.ex!==127.0.0.3
32   warn    dnslists = rbl.test.ex!==127.0.0.1,127.0.0.2
33   accept
34
35 check_mail:
36   warn    dnslists = rbl4.test.ex&0.0.0.6
37   warn    dnslists = rbl4.test.ex&127.0.0.3
38   warn    dnslists = rbl4.test.ex!&0.0.0.7
39           add_header = DNSlist: $dnslist_domain $dnslist_text $dnslist_matched
40   warn    dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
41           add_header = DNSlist: $dnslist_domain $dnslist_text $dnslist_matched
42   accept
43
44 check_recipient:
45   warn    message = X-Warn: host is listed in $dnslist_domain but not =127.0.0.3\
46                     ${if def:dnslist_text{\n  $dnslist_text}}
47           dnslists = rbl3.test.ex!=127.0.0.3
48   deny    message = host is listed in $dnslist_domain with value 127.0.0.3\
49                     ${if def:dnslist_text{\n$dnslist_text}}
50           dnslists = rbl3.test.ex=127.0.0.3
51   require verify = sender
52   deny    message = unrouteable address
53          !verify = recipient
54   accept  domains = +local_domains
55   deny    message = relay not permitted
56
57
58 # ----- Routers -----
59
60 begin routers
61
62 system_aliases:
63   driver = redirect
64   allow_defer
65   data = ${lookup{$local_part}lsearch{DIR/aux-fixed/TESTNUM.aliases}}
66   qualify_preserve_domain
67   retry_use_local_part
68
69 localuser:
70   driver = accept
71   local_parts = userx
72   transport = local_delivery
73
74
75 # ----- Transports -----
76
77 begin transports
78
79 local_delivery:
80   driver = appendfile
81   delivery_date_add
82   envelope_to_add
83   file = DIR/test-mail/${bless:$local_part}
84   return_path_add
85   user = CALLER
86
87 file:
88   driver = appendfile
89   user = CALLER
90
91 # End