SECURITY: Avoid integer overflow on too many recipients
[exim.git] / test / confs / 4620
1 # Exim test configuration 4620
2
3 .include DIR/aux-var/std_conf_prefix
4
5 SRS_SECRET = mysecret
6
7 # ----- Main settings -----
8
9 acl_smtp_rcpt = accept
10
11 domainlist local_domains = test.ex
12 domainlist remotesite_domains = remote.ex
13
14 log_selector = +all_parents +received_recipients +return_path_on_delivery
15 queue_only
16
17 # ----- Routers -----
18
19 begin routers
20
21 .ifdef CONTROL
22 remote_bouncer:
23   driver =      redirect
24   condition =   ${if eq {$sender_host_address}{127.0.0.1}}
25   data =        :fail: account disabled
26   allow_fail
27
28 bounce_return:
29   driver =      manualroute
30   domains =     +local_domains
31   senders =     :
32   route_list =  test.ex         127.0.0.1::PORT_S
33   self =        send
34   transport =   to_external
35 .endif
36
37 external:
38   driver =      manualroute
39   domains =     !+local_domains
40   route_list =  remote.ex       127.0.0.1::PORT_S
41   self =        send
42   transport =   ${if eq {$local_part@$domain} {$original_local_part@$original_domain} \
43                         {to_external} {forwarded_external}}
44
45 .ifndef CONTROL
46 inbound_srs:
47   driver =      redirect
48   senders =     :
49   domains =     +local_domains
50   # detect inbound bounces which are SRS'd, and decode them
51   condition =   ${if inbound_srs {$local_part} {SRS_SECRET}}
52   data =        $srs_recipient
53
54 inbound_srs_failure:
55   driver =      redirect
56   senders =     :
57   domains =     +local_domains
58   # detect inbound bounces which look SRS'd but are invalid
59   condition =   ${if inbound_srs {$local_part} {}}
60   allow_fail
61   data =        :fail: Invalid SRS recipient address
62 .endif
63
64 local_redirect:
65   driver =      redirect
66   local_parts = redirect
67   data =        remote_user@remote.ex
68
69 local:
70   driver =      accept
71   transport =   appendfile
72
73
74 # ----- Transports -----
75
76 begin transports
77
78 to_external:
79   driver =      smtp
80
81 forwarded_external:
82   driver =      smtp
83   max_rcpt =    1
84   return_path = ${srs_encode {SRS_SECRET} {$return_path} {$original_domain}}
85
86
87 appendfile:
88   driver =      appendfile
89   file =        DIR/test-mail/$local_part
90   create_file = DIR/test-mail
91   user =        CALLER
92
93 # ----- Retry -----
94
95 begin retry
96
97 * * F,5d,1d
98
99 # End