I have a complex config with 3.33 (almost of features are moved), but
one and most wanted feature does not want to work:
Preambula:
All users information is stored in database with mailbox flags
(over quota, closed by request, closed due violation etc.)
There is the part of config:
mpopper:
driver = smartuser
transport = mpop
domains = ukr.net
condition = ${lookup mysql{select username from user where username='$local_part'\
and flags != 8 and flags !=10 and flags !=64 }{yes}{no}}
failure_check:
domains = ukr.net
driver = aliasfile
search_type = mysql
user = exim
new_director = failure_respond
query = select flags from user where username='$local_part'
failure_respond:
driver = aliasfile
domains = ukr.net
search_type = lsearch
user = exim
file = /usr/exim/tables/FAILURE
So, usernames was redirected to their_flags@??? if first condition fails.
And cat ./FAILURE:
64: :fail: Mailbox is over quota, no more allowed
8: :fail: Mailbox frozen (long period of inactivity or user request)
10: :fail: Mailbox closed due to violation of agreement between user and UKR.NET
So, if we rcpt_to user_with_flag_10@???, server must respond:
550 Mailbox closed due to violation of agreement between user and UKR.NET
But in exim4 I see only "user unknown" given by acl_check_rcpt.
There is a part of exim4.conf, converted by hands from prev. version:
mpopper:
driver = accept
transport = mpop
domains = ukr.net
condition = ${lookup mysql{select username from user where username='$local_part'\
and flags != 8 and flags !=10 and flags !=64 }{yes}{no}}
failure_check:
domains = ukr.net
driver = redirect
allow_fail
user = exim
redirect_router = failure_respond
data = ${lookup mysql{select flags from user where username='$local_part'}}
failure_respond:
driver = redirect
domains = ukr.net
allow_fail
data = ${lookup{$local_part}lsearch{/usr/exim/tables/FAILURE}}
user = exim
file_transport = address_file
pipe_transport = address_pipe
Any ideas ?
--
VVS56-RIPE