Hello List,
After moving the mail store via dsync backup to a different location the
following command
doveadm expunge -u user mailbox "Trash" savedbefore 10d
deleted ALL mails in Trash instead of messages older than 10 days.
It looks like X-SAVEDATE is somehow wrong...
A fetch 1:* (internaldate x-savedate)
* 1 FETCH (INTERNALDATE "28-Dec-2007 14:49:58 +0100" X-SAVEDATE
"01-Jan-1970 01:00:00 +0100")
A OK Fetch completed.
...while the ctime for this mail is as below:
$ ls -lac
-rw------- 1 vmail vmail 40851 2010-12-30 19:26
1198963359.P1256Q0M253583.ubuntu-test.localdomain,S=40851:2,S
I was assuming that for the maildirs X-SAVEDATE is derived from the
message ctime? "01-Jan-1970 01:00:00 +0100" seem to be definitely
wrong.
Thanks,
e-frog
$ doveconf -n
# 2.0.8 (89936539e3b8): /etc/dovecot/dovecot.conf
# OS: Linux 2.6.35-24-generic-pae i686 Ubuntu 10.10
deliver_log_format = msgid=%m: from=%f: %$
dict {
dictionary = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
mail_gid = vmail
mail_home = /home/vmail/%Ld/%Ln
mail_location = maildir:~/maildir:INDEX=~/index:CONTROL=~/control
mail_plugins = quota virtual
mail_uid = vmail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date
namespace {
hidden = no
inbox = yes
list = yes
location prefix separator = /
subscriptions = yes
type = private
}
namespace {
location = virtual:/etc/dovecot/virtual:INDEX=~/control/virtual
prefix = virtual/
separator = /
subscriptions = no
type = private
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
antispam_backend = spool2dir
antispam_spam = Junk
antispam_spool2dir_notspam = /home/vmail/learn-ham/%%020lu-%u-%%05luh
antispam_spool2dir_spam = /home/vmail/learn-spam/%%020lu-%u-%%05lus
antispam_trash = Trash
fts = squat
fts_squat = partial=4 full=10
quota = dict:user::proxy::dictionary
sieve = ~/dovecot.sieve
sieve_before = /etc/dovecot/sieve-global/
sieve_dir = ~/sieve
}
postmaster_address = postmaster at ubuntu-test.localdomain
protocols = imap lmtp sieve
quota_full_tempfail = yes
service auth {
unix_listener /var/spool/postfix/private/dovecot-auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
mode = 0600
user = vmail
}
}
service dict {
unix_listener dict {
mode = 0600
user = vmail
}
}
service imap-login {
inet_listener imaps {
port = 0
}
process_min_avail = 2
service_count = 0
}
service imap {
executable = imap postlogin
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0660
user = postfix
}
user = vmail
}
service postlogin {
executable = script-login /opt/bin/dovecot-postlogin.sh
}
ssl = required
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
verbose_proctitle = yes
protocol lmtp {
mail_plugins = quota virtual sieve
}
protocol imap {
mail_plugins = quota virtual fts fts_squat imap_quota antispam
}