SECURITY: Avoid integer overflow on too many recipients
[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   warn    dnslists = rbl.test.ex
34   accept
35
36 check_mail:
37   warn    dnslists = rbl4.test.ex&0.0.0.6
38   warn    dnslists = rbl4.test.ex&127.0.0.3
39   warn    dnslists = rbl4.test.ex!&0.0.0.7
40           add_header = DNSlist: $dnslist_domain $dnslist_text $dnslist_matched
41   warn    dnslists = rbl5.test.ex,rbl4.test.ex=127.0.0.128
42           add_header = DNSlist: $dnslist_domain $dnslist_text $dnslist_matched
43   accept
44
45 check_recipient:
46   warn    message = X-Warn: host is listed in $dnslist_domain but not =127.0.0.3\
47                     ${if def:dnslist_text{\n  $dnslist_text}}
48           dnslists = rbl3.test.ex!=127.0.0.3
49   deny    message = host is listed in $dnslist_domain with value 127.0.0.3\
50                     ${if def:dnslist_text{\n$dnslist_text}}
51           dnslists = rbl3.test.ex=127.0.0.3
52   require verify = sender
53   deny    message = unrouteable address
54          !verify = recipient
55   accept  domains = +local_domains
56   deny    message = relay not permitted
57
58
59 # ----- Routers -----
60
61 begin routers
62
63 system_aliases:
64   driver = redirect
65   allow_defer
66   data = ${lookup{$local_part}lsearch{DIR/aux-fixed/TESTNUM.aliases}}
67   qualify_preserve_domain
68   retry_use_local_part
69
70 localuser:
71   driver = accept
72   local_parts = userx
73   transport = local_delivery
74
75
76 # ----- Transports -----
77
78 begin transports
79
80 local_delivery:
81   driver = appendfile
82   delivery_date_add
83   envelope_to_add
84   file = DIR/test-mail/$local_part
85   create_file = DIR/test-mail
86   return_path_add
87   user = CALLER
88
89 file:
90   driver = appendfile
91   user = CALLER
92
93 # End