>
> You need to check user's quota on routing stage, not transport.
>
It'd be much better, because I would allow me to mix overquota and
no-overquota recipients.
But the problem in my case is that I am using some hashing to
distribute the users' mailboxes, dovecot can handle this easily
because it supports some interesting stuff
(
http://wiki.dovecot.org/Variables)
With a perl script I could also do that, I would like only if it's the
last resort (too much overhead I would think)
>
> I have wrote perl script for my setup that checks existence of maildirsize file and counting quota value for mailbox on smtp-processing stage, thus if user overquota exim's router will return error and you can treat it as 4xx or 5xx response.
>
>
> Here is example of exim router:
>
> quota_check:
> driver = redirect
> domains = +local_domains
> allow_defer
> allow_fail
> condition = ${if \
> eq{${perl{check_quota}{$local_part}{$domain}}} {no}\
> }
> data = :fail: Account is under quota //5xx error
> #data = :defer: Account is under quota //4xx error
>