failed to expand condition ${perl{check_limits}}

propcgamer

Verified User
Joined
Dec 27, 2005
Messages
98
When a user hits their daily email limit, their outgoing e-mails are bounced.

I see this error message in exim's log:
failed to expand condition "${perl{check_limits}}" for lookuphost router: You (username) have reached your daily email limit of 300 emails

The user gets a Mail delivery failed: returning message to sender that says "Unrouteable address" instead of the "You have reached your daily email limit" message.

I also found this reference to check_limits in my exim.conf file:
Code:
lookuphost:
  driver = dnslookup
  domains = ! +local_domains
  ignore_target_hosts = 127.0.0.0/8
  condition = "${perl{check_limits}}"
  transport = remote_smtp
  no_more
Which seems to be the same as found in http://files.directadmin.com/services/exim.conf

I checked an I am using the latest exim.pl file from http://files.directadmin.com/services/exim.pl

I did receive a directadmin ticket once the user hit the limit, so part of it is working, but any suggestions on how to fix the "failed to expand condition"?

Thanks
 
Last edited:
Just a guess, but have you tried updating exim to the latest version?

Jeff
 
I was running Exim version 4.73
so i updated to Exim version 4.76
However it still seems to have the same issue.

It also added a new issue, when the e-mail recipient is a domain hosted on our server, but using external MX (and this is set correctly in directadmin), instead of delivering the "Unrouteable address" message to the sender, it puts it in the local mailbox (R=virtual_user T=virtual_localdelivery) for the recipient, even though they are using external MX.
Then when I remove the limit usage file, so everything is back to normal, messages flow correctly to external MX.:confused:
But thats not as important as the first problem.
 
Hello,

I have the same problem.

failed to expand condition "${perl{check_limits}}" for lookuphost router: You (USER) have reached your daily email limit of 200 emails

exim 4.67
Debian 6.0
Perl v5.10.1
 
I have 200 in /etc/virtual/limit

latest exim.pl

Limit works but when it's exceeded exim is unable to expand condition from perl{check_limits}
 
in mainlog and paniclog

And it's ok, becuase condition expand fails on lookuphost router

I have warning message in DA and everything is ok except sending information email about exceeded limit to sender
 
I had exatly same problem (a search on forum pointed me to an old thread where i had the problem)

DA support had reply this:

Are you *sure* you've got this /etc/exim.pl?
http://files.directadmin.com/services/exim.pl

Also ensure the exim.pl is chmod 755 (not sure if it really matter, but that's what I've got).


Also please take a look on this: http://www.directadmin.com/forum/showthread.php?t=38574&highlight=failed+expand+condition&page=3

And following pages, dunno if related to the "unkown" user problem, but, not sure.. i know just ive not that problem anymore and ive solved with that thread.

Please refer aswell to http://help.directadmin.com/item.php?id=360

Hope those informations are useful.

Regards
 
Back
Top