Hello,
Currently vpopmail doesn't include trashed messages in quota usage.
These are messages that were marked as deleted (IMAP flag \Deleted) but
are still not expunged. These are denoted by the T flag in Maildir:
http://cr.yp.to/proto/maildir.html
It seems two of the popular mail servers out there have opposing
behavior: courier doesn't count trashed messages while dovecot does
count them.
In my setup I have some users, who seem to forgot to expunge (also known
as "Compact" in thunderbird) their mailboxes and trahsed messages keep
piling up and filling filesystems. That's why I prefer including trashed
messages in quota usage and forcing users to take measures this way.
I guess it'd be best to add a configuration option (either ./configure
compile time or runtime to some config file), but for my specific case I
patched maildirquota.c with the attached patch.
HTH someone.
Best regards,
Teodor
!DSPAM:54d9e9c441146365629053!
--- maildirquota.h.orig 2015-02-03 14:34:30.000000000 +0200
+++ maildirquota.h 2015-02-03 14:19:38.000000000 +0200
@@ -16,6 +16,12 @@
#define MAILDIRSIZE_OVERLEN 5120
#define MAILDIRSIZE_OLD_SECS 15*60
+/*
+ * Count messages marked as deleted, but still not expunged:
+ * http://cr.yp.to/proto/maildir.html
+ */
+#define QUOTA_COUNT_TRASHED 1
+
/* I've removed pretty much the whole file execept for
some public functions so as to not conflict with courier.
I"ve made the courier functions static.
--- maildirquota.c.orig 2015-02-03 13:15:37.000000000 +0200
+++ maildirquota.c 2015-02-03 14:35:47.000000000 +0200
@@ -990,9 +990,7 @@
const char *n=de->d_name;
if (*n == '.') continue;
-
- /* PATCH - do not count msgs marked as deleted */
-
+#if QUOTA_COUNT_TRASHED == 0
for ( ; *n; n++)
{
if (n[0] != ':' || n[1] != '2' ||
@@ -1006,6 +1004,7 @@
break;
}
if (*n == 'T') continue;
+#endif
n=de->d_name;