On 1/17/09, Timo Sirainen wrote:
On Jan 17, 2009, at 2:36 PM, Gary V wrote:
Then a bounce is created stating the mail was rejected:
Your message to test@example.com was automatically rejected: Quota exceeded (mailbox for user is full).
Question: is it possible (without changing code) to alter this to where deliver would instead tempfail or something. Somehow it seems wrong to me to tell the MTA that everything is good, and then silently discard messages - regardless of the fact dovecot creates a bounce. This is not necessarily ideal either, but I _am_ wondering if this is configurable or not.
a) deliver -e
b) quota_full_tempfail=yes
c) a+b
Just as a matter of interest. On my Postfix system:
a) Using deliver -e, Postfix bounces the message immediately 5.7.0 -> Subject: Undelivered Mail Returned to Sender. Partial body: "test@example.com: permission denied. Command output: Quota exceeded (mailbox for user is full)". Postfix does not retain the message.
b) quota_full_tempfail=yes: defers the message with 4.3.0. If the user makes room for the message, then it will eventually be delivered. If they don't, then _eventually_ a bounce will be sent. In this case the bounce is less informative. Partial body: "test@example.com: temporary failure". In the case where the message is not delivered, using default settings in Postfix, the sender will be notified 5 days after they sent the message.
c) For over quota with a+b, it behaves the same way as b, but the bounce notice will be more informative: Partial body: "test@example.com: temporary failure. Command output: Quota exceeded (mailbox for user is full)".
I would say this is expected.
Each of the four possibilites has advantages and disadvantages, and personally I think a) might be closest to "doing the right thing", but it would be cool to have the option of deferring the mail (using option a+b) and additionally have deliver immediately send a message to the sender notifying them that their mail has been delayed due to the recipient being over quota. Something like:
Mail Delay Notification Your message to user@example.com has been delayed because the recipient's maibox is full. Your message will be retained on our server for an unspecified amount of time and a number delivery attemps may be made on your behalf. If delivery eventually fails, you will be sent a notification via email that delivery failed - or that your message was undeliverable. Note: notifications of this type are often identified as Junk Mail or Spam by mail systems! This aspect is beynd our control, so it may be in your best interest to contact the recipient by some other means and let them know you received this message.
Of course, one big problem would be to only send the message once, and not each time a delivery was attempted. No doubt there would be other issues. I'm just throwing this out there as a thought. I have no idea if would even be possible to implement something like this, or whether there is any interest or not.
-- Gary V