SECURITY: off-by-one in smtp transport (read response)
[exim.git] / test / confs / 1003
index bdbd2e6c3f85ece3bb1b3e5a07a8c0bad542955e..62eca9f846a980ec2639b006c590af372af2c2bd 100644 (file)
@@ -21,7 +21,11 @@ begin routers
 client:
   driver = accept
   condition = ${if eq {SERVER}{server}{no}{yes}}
-  transport = send_to_server
+  address_data = ${substr_1_1:$domain}
+  transport = send_to_server${if eq {1}{$address_data} {1} \
+                               {${if eq {2}{$address_data} {2} \
+                               {${if eq {3}{$address_data} {3} \
+                               {${if eq {4}{$address_data} {4}{5}}}}}}}}
 
 server:
   driver = accept
@@ -35,13 +39,55 @@ begin transports
 local_delivery:
   driver = appendfile
   file = DIR/test-mail/$local_part
+  create_file = DIR/test-mail
   user = CALLER
 
+send_to_server1:
+  driver = smtp
+  allow_localhost
+  hosts = ${if eq {$local_part}{user4} {127.0.0.1} {<; ::1}}
+  port = PORT_D
+  hosts_try_fastopen = :
+  interface = <; ::1 ; HOSTIPV4
+
+send_to_server2:
+  driver = smtp
+  allow_localhost
+  hosts = ${if eq {$local_part}{user4} {127.0.0.1} {<; ::1}}
+  port = PORT_D
+  hosts_try_fastopen = :
+  interface = <; HOSTIPV6 ; HOSTIPV4
+
+send_to_server3:
+  driver = smtp
+  allow_localhost
+  hosts = ${if eq {$local_part}{user4} {127.0.0.1} {<; ::1}}
+  port = PORT_D
+  hosts_try_fastopen = :
+  interface = <; ${if eq{0}{1}{HOSTIPV6}fail}
+
+send_to_server4:
+  driver = smtp
+  allow_localhost
+  hosts = ${if eq {$local_part}{user4} {127.0.0.1} {<; ::1}}
+  port = PORT_D
+  hosts_try_fastopen = :
+  interface = <; ${if eq{0}{1}{HOSTIPV6}{  }}
+
+send_to_server5:
+  driver = smtp
+  allow_localhost
+  hosts = ${if eq {$local_part}{user4} {127.0.0.1} {<; ::1}}
+  port = PORT_D
+  hosts_try_fastopen = :
+  interface = <; ${if 
+
 send_to_server:
   driver = smtp
   allow_localhost
-  hosts = $h_hosts
+  hosts = ${if eq {$local_part}{user4} {127.0.0.1} {<; ::1}}
   port = PORT_D
+  hosts_try_fastopen = :
   interface = ${expand:$h_interface:}