Ahoj,
Dňa Wed, 13 Aug 2025 08:46:50 +0200 Frank Richter via Exim-users
<[email protected]> napísal:
> Now, (how) can I change this message '451 Temporary local problem -
> please try later'?
> This causes questions to me: Please fix your local problem :-)
It was nice exercise for me :-P
It can be done by nested ACL, first define named ACL somewhere:
# distinguish temporary error in recipient verify, sets acl_m_rvrfy
rcpt_verify:
# set temporary error result
require set acl_m_rvrfy = defer
# on success verify
accept verify = recipient
set acl_m_rvrfy = accept
# on failed verify
deny set acl_m_rvrfy = deny
It is based on fact, how verify and nested ACLs works:
+ if success, the nested ACL sets value to variable to accept
(actually unused) and returns accept
+ if failed, the nested ACL continues to deny where is unconditionally
sets variable value to deny
+ if verify defers, the nested ACL returns that and initial value of
variable remains
Then use it in RCPT ACL (add more conditions as appropriate) , where
nested ACL is called to set variable, then i act on variable value as
needed:
require set acl_m_rvrfy =
warn acl = rcpt_verify
deny condition = ${if eq{$acl_m_rvrfy}{deny}}
message = Unroutable recipient domain
defer condition = ${if eq{$acl_m_rvrfy}{defer}}
message = Temporary unroutable recipient domain
The only problem is, that temporary verify errors can be caused not
only by DNS, but IMO this message is better as default one...
regards
--
Slavko
https://www.slavino.sk
--
## subscription configuration (requires account):
## https://lists.exim.org/mailman3/postorius/lists/exim-users.lists.exim.org/
## unsubscribe (doesn't require an account):
## [email protected]
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/