[Dovecot] Dovecot discards mail over quota

Sahil Tandon sahil at tandon.net
Mon Jan 19 02:28:47 EET 2009


On Sun, 18 Jan 2009, Gary V wrote:

> On 1/18/09, Sahil Tandon wrote:
> > On Sun, 18 Jan 2009, Gary V wrote:
> >
> > > 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 at 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 at 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 at 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 at 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:
> >
> > I prefer a) because it does not involve backscatter in the case of spoofed
> > sender addresses.
> >
> > --
> > Sahil Tandon <sahil at tandon.net>
> >
> 
> Hmm, in my test, mail is not rejected during smtp conversation, so as
> far as I can see, there is no prevention of backscatter. Posftix
> creates a bounce after the fact and sends it to whomever the sender is
> (or at least attempts to).

Ah, I construed your report to mean Postfix _did_ reject at SMTP; my bad
interpretation!  Right now we have it working with tempfail and users
generally free up their mailbox so an actual bounce (backscatter) is yet to
ocurr.

-- 
Sahil Tandon <sahil at tandon.net>


More information about the dovecot mailing list