hello!
Let's see the case if EXIM quota is set (does anyone use the system quota for
mailbox limiting at all?):
Can we make "fiction delivery" or "test of delivery"?
For example:
------------
in ACL check_smtp_rcpt:
deny = !check_quota
message = mailbox is full
------------
check_quota (make test of delivery, not real delivery):
if (delivery_to_the_file) {
if (mailbox_size < [per-user]_quota) {
return OK
} else {
return FAIL
}
} else {
return OK
}
delivery_to_the_file - set by any of transport, which decide write message to
the disk to the known filename (not to the pipe or smth like that).
And it should be _PERMANENT_ error - NOT ":defer:". 5xx error should be
generated in overquota case.
per_user_quota file may content:
user1@???: 100M
user2@???: 20M
*@domain.com: 5M
*@foo.com: 10M
*: 5M
PS Quota in this case should be "soft" - last message before overquota
received in any case (even if message size more than space left in the
mailbox), but after that - mailbox is full.
> The following item is already on the Exim 4 wish list:
>
> ---------------------------------------------------------------------------
> (3) 01-Jan-02 U Test for over-quota at SMTP time
>
> This is a hard one, because the only way to test for over quota is to try
> to deliver a message, certainly if system quotas are being used. And also,
> the only available size at RCPT time is the SIZE option, though of course
> the test could be run at DATA time. I think maybe we leave this one to an
> external program, and require people to use ${run} to access the data. Let
> someone else figure out how to extract the current mailbox size!
> ---------------------------------------------------------------------------
--
_____________
Roman Minakov