However I've been advised that using delays is not a good idea. In some situations, I'd prefer to reject mail rather than delay.
For example, consider the following ACL:
CODE
deny message = Hacked HELO: you are not $sender_helo_name
condition = ${if match {$sender_helo_name}{\N^[A-Z0-9]+\.[a-z]+$\N}{yes}{no}}
condition = ${if match {$sender_helo_name}{\N^[0-9]+\.[a-z]+$\N}{no}{yes}}
!hosts = @[]
!hosts = +rv_relay_hosts
!authenticated = *
delay = 3s
condition = ${if match {$sender_helo_name}{\N^[A-Z0-9]+\.[a-z]+$\N}{yes}{no}}
condition = ${if match {$sender_helo_name}{\N^[0-9]+\.[a-z]+$\N}{no}{yes}}
!hosts = @[]
!hosts = +rv_relay_hosts
!authenticated = *
delay = 3s
In such situations, the sending host will be pretending it is someone it is not. Assuming that no hosts sending valid mail would do something so silly, I have no interest in any such messages and so I would like to reject them instead of issue a 3 second delay.
So, my rather simple question is: how could I modify the above ACL to reject rather than delay?