Re: Dovecot 2.2.20 autoexpunge

2015-12-22 Thread Teemu Huovila


On 22.12.2015 19:24, Robert Blayzor wrote:
>> On Dec 22, 2015, at 9:49 AM, Dominik Breu  wrote:
>> the autoexpunge feature only removes mails wich have the  \Delete Flag so no 
>> deletion of mails wich doesn't have this Flag(see 
>> https://tools.ietf.org/html/rfc4315#section-2.1 or 
>> http://wiki2.dovecot.org/Tools/Doveadm/Expunge)
>>
>> you could run a cron job with a doveadm move comando to move the mail to an 
>> othe mailbox (see http://wiki2.dovecot.org/Tools/Doveadm/Move)
> 
> 
> Ok, but that’s not how the documentation for expire or this features reads. 
> According to the docs it’s based off the “saved timestamp”, not a deleted 
> flag? So it’s based off “saved timestamp” *and* deleted flag?
The autoexpunge feature does not check the \Deleted flag.

Are any errors logged in "doveadm log errors"? Could you post your complete 
output of doveconf -n please.

br,
Teemu Huovila


Re: Dovecot 2.2.20 autoexpunge

2015-12-22 Thread Robert Blayzor
On Dec 22, 2015, at 2:56 PM, Teemu Huovila  wrote:
> 
> The autoexpunge feature does not check the \Deleted flag.
> 
> Are any errors logged in "doveadm log errors"? Could you post your complete 
> output of doveconf -n please.



That’s what I thought. If I run expunge from doveadm manually, it will work as 
expected. I just never seem to get autoexpunge to fire.

Looking in the logs, I see no errors:

Below is the config…

--
Robert
inoc.net!rblayzor
XMPP: rblayzor.AT.inoc.net
PGP Key: 78BEDCE1 @ pgp.mit.edu





# 2.2.21 (5345f22): /usr/local/etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.9 (357ac0a0e68b+)
# OS: FreeBSD 10.2-RELEASE-p8 amd64  
doveconf: Warning: Dovecot was last started using /etc/dovecot/dovecot.conf, 
but this config is /usr/local/etc/dovecot/dovecot.conf
auth_mechanisms = plain login
disable_plaintext_auth = no
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
mail_location = maildir:~/Maildir
mail_plugins = zlib
mail_temp_dir = /var/tmp
mailbox_list_index = yes
managesieve_sieve_capability = fileinto reject envelope encoded-character 
vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy 
include variables body environment mailbox date index ihave duplicate
namespace inbox {
  inbox = yes
  location = 
  mailbox Archive {
auto = subscribe
special_use = \Archive
  }
  mailbox Drafts {
auto = subscribe
special_use = \Drafts
  }
  mailbox Junk {
auto = subscribe
autoexpunge = 30 days
special_use = \Junk
  }
  mailbox Sent {
auto = subscribe
special_use = \Sent
  }
  mailbox Trash {
auto = subscribe
autoexpunge = 2 weeks
special_use = \Trash
  }
  prefix = 
}
passdb {
  driver = pam
}
plugin {
  sieve = ~/.dovecot.sieve
  sieve_default = /etc/dovecot/sieve/default.sieve
  sieve_dir = ~/.sieve.d
  sieve_extensions = -enotify
  sieve_global_dir = /etc/dovecot/sieve/global/
  zlib_save = xz
  zlib_save_level = 6
}
protocols = imap pop3 lmtp sieve
service auth {
  unix_listener auth-client {
mode = 0660
user = mailnull
  }
}
service lmtp {
  unix_listener lmtp {
mode = 0666
  }
}
service managesieve-login {
  inet_listener sieve {
port = 4190
  }
  service_count = 1
}
service managesieve {
  process_limit = 100
}
ssl_cipher_list = ALL:-SSLv3:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
ssl_protocols = !SSLv2 !SSLv3
userdb {
  driver = passwd
}
protocol lmtp {
  auth_username_format = %Ln
  mail_plugins = zlib sieve
}
protocol lda {
  mail_plugins = zlib sieve
}
protocol imap {
  mail_max_userip_connections = 10
  mail_plugins = zlib
}
protocol pop3 {
  mail_max_userip_connections = 2
  mail_plugins = zlib
}
protocol sieve {
  mail_max_userip_connections = 3
  managesieve_implementation_string = Dovecot
  managesieve_max_line_length = 65536
}


dsync and namespaces

2015-12-22 Thread Charlie Hothersall-Thomas
`doveconf -n' output:

> # 2.2.10: /etc/dovecot/dovecot.conf
> # OS: Linux 3.10.0-229.20.1.el7.x86_64 x86_64 CentOS Linux release 7.2.1511 
> (Core)
> listen = *
> mail_location = maildir:~/Maildir/
> namespace {
>   inbox = yes
>   location =
>   prefix =
>   separator = /
>   type = private
> }
> namespace {
>   location = maildir:/srv/mail/
>   prefix = Public/
>   separator = /
>   subscriptions = no
>   type = public
> }
> passdb {
>   driver = pam
> }
> ssl_cert =  ssl_key =  userdb {
>   driver = passwd
> }

I have some public mailboxes in /srv/mail -- Public/Alpha and
Public/Mike -- using configuration taken more or less verbatim from
http://wiki2.dovecot.org/SharedMailboxes/Public. These are stored in
Maildir format; here's a sample of how things look on disk at the
moment:

> /srv/mail/
> ├── .Alpha
> │   ├── cur
> │   │   └── 1450775948.M24820P23708.cht,S=8186,W=8360:2,S
> │   ├── dovecot.index.cache
> │   ├── dovecot.index.log
> │   ├── dovecot-uidlist
> │   ├── maildirfolder
> │   ├── new
> │   └── tmp
> ├── cur
> ├── dovecot.index.log
> ├── dovecot-uidlist
> ├── dovecot-uidvalidity
> ├── dovecot-uidvalidity.5679158d
> ├── maildirfolder
> ├── .Mike
> │   ├── cur
> │   │   ├── 1450775948.M202327P23708.cht,S=8405,W=8576:2,S
> │   │   ├── 1450775948.M257575P23708.cht,S=5590,W=5732:2,S
> │   ├── dovecot.index.cache
> │   ├── dovecot.index.log
> │   ├── dovecot-uidlist
> │   ├── maildirfolder
> │   ├── new
> │   └── tmp
> ├── new
> └── tmp

I'm trying to convert these public mailboxes from Maildir to mdbox
format. My end goal is a directory structure like the following. I
obtained this example by emptying /srv/mail, changing `location =
maildir:/srv/mail/' to use mdbox, and then delivering some messages into
Public/Alpha and Public/Mike:

> /srv/mail/
> ├── dovecot-uidvalidity
> ├── dovecot-uidvalidity.567915fa
> ├── mailboxes
> │   ├── Alpha
> │   │   └── dbox-Mails
> │   │   ├── dovecot.index.cache
> │   │   └── dovecot.index.log
> │   ├── dbox-Mails
> │   │   └── dovecot.index.log
> │   └── Mike
> │   └── dbox-Mails
> │   ├── dovecot.index.cache
> │   └── dovecot.index.log
> └── storage
> ├── dovecot.map.index.log
> └── m.1

I know that dsync can be used to convert between mailbox formats, but is
this possible in conjunction with namespaces? I can convert one of my
mailboxes to an arbitrary mdbox location on disk using...

> dsync -o mail_location=mdbox:/tmp/dbox/ mirror maildir:/srv/mail/.Mike/

... although this puts the messages inside an INBOX mailbox:

> /tmp/dbox/
> ├── mailboxes
> │   └── INBOX
> │   └── dbox-Mails
> │   ├── dovecot.index.cache
> │   └── dovecot.index.log
> └── storage
> ├── dovecot.map.index.log
> └── m.1

I could run this once per public mailbox, writing each to a different
mdbox location, but am unaware of a method to merge them such that they
would work with my Public/ namespace.

Is it possible to use dsync to convert my public Maildir mailboxes to
mdbox, resulting in my desired directory structure above? I think I want
to be able to tell dsync the location as a mailbox name, rather than a
disk location, although this doesn't appear to be possible.

If not, is there another solution? My best idea at the moment is to make
the configuration change and then re-deliver all messages by mailbox
name.

Thanks in advance, and happy holidays,

-- 
Charlie Hothersall-Thomas | w:   https://charlie.ht
  | e:   m...@charlie.ht
  | pgp: 4096R/C3676E3E


Re: [bug][Pigeonhole 0.4.10] Missing msgid

2015-12-22 Thread Alexander Moisseev

On 22.12.15 2:06, Stephan Bosch wrote:


I am quite confident that this fixes it:
http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/37ddc42c007c

Regards,
Stephan.


Yes, that change fixed the issue. Thanks!


Dovecot 2.2.20 autoexpunge

2015-12-22 Thread Robert Blayzor
I have configured autoexpunge on some folders:

namespace inbox {
  inbox = yes
  location =
  mailbox Junk {
auto = subscribe
autoexpunge = 30 days
special_use = \Junk
  }
  mailbox Trash {
auto = subscribe
autoexpunge = 2 weeks
special_use = \Trash
  }
  prefix =
  separator = /
}



After adding these and restarting, logging in and out several times, I still 
see messages days/weeks past the autoexpunge setting. I checked the logs but 
never see any autoexpunge messages logged. Is there something else that needs 
to be set to trigger this?

--
Robert
inoc.net!rblayzor
XMPP: rblayzor.AT.inoc.net
PGP Key: 78BEDCE1 @ pgp.mit.edu


Re: Dovecot 2.2.20 autoexpunge

2015-12-22 Thread Dominik Breu

Hi Robert,

the autoexpunge feature only removes mails wich have the  \Delete Flag 
so no deletion of mails wich doesn't have this Flag(see 
https://tools.ietf.org/html/rfc4315#section-2.1 or 
http://wiki2.dovecot.org/Tools/Doveadm/Expunge)


you could run a cron job with a doveadm move comando to move the mail to 
an othe mailbox (see http://wiki2.dovecot.org/Tools/Doveadm/Move)


greetings
dominik

Am 22.12.2015 um 13:32 schrieb Robert Blayzor:

I have configured autoexpunge on some folders:

namespace inbox {
   inbox = yes
   location =
   mailbox Junk {
 auto = subscribe
 autoexpunge = 30 days
 special_use = \Junk
   }
   mailbox Trash {
 auto = subscribe
 autoexpunge = 2 weeks
 special_use = \Trash
   }
   prefix =
   separator = /
}



After adding these and restarting, logging in and out several times, I still 
see messages days/weeks past the autoexpunge setting. I checked the logs but 
never see any autoexpunge messages logged. Is there something else that needs 
to be set to trigger this?

--
Robert
inoc.net!rblayzor
XMPP: rblayzor.AT.inoc.net
PGP Key: 78BEDCE1 @ pgp.mit.edu


Re: Dovecot 2.2.20 autoexpunge

2015-12-22 Thread Robert Blayzor
> On Dec 22, 2015, at 9:49 AM, Dominik Breu  wrote:
> the autoexpunge feature only removes mails wich have the  \Delete Flag so no 
> deletion of mails wich doesn't have this Flag(see 
> https://tools.ietf.org/html/rfc4315#section-2.1 or 
> http://wiki2.dovecot.org/Tools/Doveadm/Expunge)
> 
> you could run a cron job with a doveadm move comando to move the mail to an 
> othe mailbox (see http://wiki2.dovecot.org/Tools/Doveadm/Move)


Ok, but that’s not how the documentation for expire or this features reads. 
According to the docs it’s based off the “saved timestamp”, not a deleted flag? 
So it’s based off “saved timestamp” *and* deleted flag?

--
Robert
inoc.net!rblayzor
XMPP: rblayzor.AT.inoc.net
PGP Key: 78BEDCE1 @ pgp.mit.edu