On 03/25/2011 12:02 AM, Simon Brereton wrote:
Hi

I'm still trying to get Postfix to use deliverquota to deliver the mails to my 
Maildirs.

The only thing I could find on the net was a comment from Magnus 
http://www.irbs.net/internet/postfix/0412/1673.html that I had to make my own 
pipe.

So this is my attempt:

deliverquota  unix  -       n       n       -       -       pipe
        flags=DRhu user=vmail argv=/usr/bin/deliverquota $domain/$recipient

One concern - vmail is not a user on my system (and since I copied this from 
the maildrop pipe, I'm now wondering how mail is delivered at all.

Not via maildrop, since the user does not exist.
The first message postfix tries to deliver to the maildrop transport will crash it with a fatal error.

For basic information on how (local) mail is delivered, read http://www.postfix.org/OVERVIEW.html#delivering

My first question is, is $domain/$recipient the way to deliver a Maildir 
structure that is always domain.tld/user where user is the portion before the @ 
- this is the way I've understood man pipe, but I'd like to be sure.
Do I need it to be unpriv or not?

The choice of mailstore is unrelated to any other postfix configuration options; it's just a choice. If you want mail to be stored in /var/mail/domain.tld/username then the above will accomplish that.

I'm unsure what you mean by "unpriv" - postfix does not execute setuid root programs, so in that sense, everything is unprivileged.


My second question is what happens when deliverquota refuses to deliver the 
mail because the Maildir is over quota?  Does postfix try to deliver a DNS?


That depends on the status deliverquota returns to postfix.
If it's a temporary error, the message will be deferred and retried later.
If it's a permanent error, the message will be rejected and postfix will generate a DSN back to the originator.


--
J.

Reply via email to