Achim Gottinger
2022-Feb-18 12:41 UTC
Using dovecot-shared for an shared index not working
Hello
I'm in the process to migrate our mail server from version 2.2.13 with
maildirs to 2.3.13 with sdbox.
On the old server if we wanted an common index for the seen flag on shared
folders we created an file called dovecot-shared in the mail_location folder and
the mailbox folders.
This does not work on the new server for all shared mailboxes the seen flag is
stored per user.
The log file shows this if the seen flag is changed
Feb 18 13:24:15 SERVER dovecot[18887]:
imap(USER)<18978><51HhlUnYeOfAwAx3>: Debug: imapsieve: mailbox
shared/info: FLAG event (changed flags: \Seen)
The dovecot-acl file for the shared/info/INBOX folder has the s flag set.
I hope i can get a few pointers here how to get the seen flag working for all
users again.
On the old server the location variable for the shared folders had the variable
INDEX defined which can not be used with sdbox.
location =
maildir:/home/vmail/%%u/mail:INDEX=/home/vmail/%u/mail/shared/%%u:INBOX=/home/vmail/%%u/mail/.INBOX
Does that imply that sharing the seen flag can not be used with sdbox?
Thanks in advance,
Achim
Here is the dovecot -n output:
----------------------------------------------------------------------------------------------------------------------
# Pigeonhole version 0.5.13 (cdd19fe3)
# OS: Linux 4.19.0+1 x86_64 Debian 11.2 zfs
# Hostname: SERVER
auth_cache_size = 5 M
auth_gssapi_hostname = SERVER
auth_krb5_keytab = /etc/dovecot/dovecot.keytab
auth_master_user_separator = %
auth_mechanisms = plain login gssapi
auth_username_format = %Ln
debug_log_path = syslog
first_valid_gid = 998
first_valid_uid = 998
imap_max_line_length = 2 M
info_log_path = syslog
mail_attachment_dir = /var/lib/vmail/attachements
mail_debug = yes
mail_gid = 998
mail_home = /var/lib/vmail/%u
mail_location = sdbox:/var/lib/vmail/%u/sdbox:INDEX=/var/lib/vmail/%u/sdbox
mail_plugins = acl fts fts_solr
mail_uid = 998
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 index ihave duplicate mime foreverypart extracttext imapsieve
vnd.dovecot.imapsieve
namespace {
? list = children
? location =
sdbox:/var/lib/vmail/%%u/sdbox:INDEXPVT=/var/lib/vmail/%u/sdbox/shared/%%u
? prefix = shared/%%u/
? separator = /
? subscriptions = no
? type = shared
}
namespace inbox {
? inbox = yes
? location
? mailbox Drafts {
??? special_use = \Drafts
? }
? mailbox Junk {
??? special_use = \Junk
? }
? mailbox Sent {
??? special_use = \Sent
? }
? mailbox "Sent Messages" {
??? special_use = \Sent
? }
? mailbox Trash {
??? special_use = \Trash
? }
? prefix
? separator = /
? type = private
}
passdb {
? args = /etc/dovecot/dovecot-ldap-passdb.conf.ext
? driver = ldap
}
plugin {
? acl = vfile
? acl_anyone = allow
? acl_defaults_from_inbox = yes
? acl_shared_dict = file:/var/lib/vmail/.shared-mailboxes
? fts = solr
? fts_autoindex = yes
? fts_autoindex_exclude = \Junk
? fts_autoindex_exclude2 = \Trash
? fts_solr = url=http://localhost:8983/solr/dovecot/
? imapsieve_mailbox1_before = file:/etc/dovecot/sieve/report-spam.sieve
? imapsieve_mailbox1_causes = COPY
? imapsieve_mailbox1_name = Junk
? imapsieve_mailbox2_before = file:/etc/dovecot/sieve/report-ham.sieve
? imapsieve_mailbox2_causes = COPY
? imapsieve_mailbox2_from = Junk
? imapsieve_mailbox2_name = *
? mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename
? mail_log_fields = uid box msgid from subject size
? sieve = ~/.dovecot.sieve
? sieve_after = /etc/dovecot/sieve/after.d/
? sieve_dir = ~/sieve
? sieve_global_extensions = +vnd.dovecot.pipe
? sieve_pipe_bin_dir = /etc/dovecot/sieve
? sieve_plugins = sieve_imapsieve sieve_extprograms
}
protocols = " imap lmtp sieve"
service auth-worker {
? user = $default_internal_user
}
service auth {
? unix_listener /var/spool/postfix/private/auth {
??? group = postfix
??? mode = 0666
??? user = postfix
? }
? unix_listener auth-userdb {
??? group = vmail
??? mode = 0777
??? user = vmail
? }
}
service imap-login {
? inet_listener imap {
??? port = 143
? }
? inet_listener imaps {
??? port = 993
??? ssl = yes
? }
}
service imap-postlogin {
? executable = script-login /etc/dovecot/acl-groups.sh
? user = $default_internal_user
}
service imap {
? executable = imap imap-postlogin
}
service lmtp {
? unix_listener /var/spool/postfix/private/dovecot-lmtp {
??? group = postfix
??? mode = 0666
??? user = postfix
? }
}
service managesieve-login {
? inet_listener sieve {
??? port = 4190
? }
}
ssl_cert = </etc/ssl/certs/SERVER.pem
ssl_client_ca_dir = /etc/ssl/certs
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
userdb {
? args = /etc/dovecot/dovecot-ldap-user.conf.ext
? driver = ldap
}
userdb {
? args = /etc/dovecot/dovecot-ldap-group.conf.ext
? driver = ldap
}
protocol lmtp {
? mail_plugins = acl fts fts_solr sieve
}
protocol imap {
? imap_client_workarounds = delay-newmail
? mail_plugins = acl fts fts_solr imap_sieve imap_acl fts fts_solr
}
local_name EXTERN {
? ssl_cert = </etc/letsencrypt/live/EXTERN/fullchain.pem
? ssl_key = # hidden, use -P to show it
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://dovecot.org/pipermail/dovecot/attachments/20220218/f074f381/attachment-0001.htm>
Achim Gottinger
2022-Feb-18 13:13 UTC
Using dovecot-shared for an shared index not working
Am 18.02.2022 um 13:41 schrieb Achim Gottinger:> Hello > > I'm in the process to migrate our mail server from version 2.2.13 with maildirs to 2.3.13 with sdbox. > On the old server if we wanted an common index for the seen flag on shared folders we created an file called dovecot-shared in the mail_location folder and the mailbox folders. > This does not work on the new server for all shared mailboxes the seen flag is stored per user. > > The log file shows this if the seen flag is changed > > Feb 18 13:24:15 SERVER dovecot[18887]: imap(USER)<18978><51HhlUnYeOfAwAx3>: Debug: imapsieve: mailbox shared/info: FLAG event (changed flags: \Seen) > > The dovecot-acl file for the shared/info/INBOX folder has the s flag set. > > I hope i can get a few pointers here how to get the seen flag working for all users again. > On the old server the location variable for the shared folders had the variable INDEX defined which can not be used with sdbox. > > location = maildir:/home/vmail/%%u/mail:INDEX=/home/vmail/%u/mail/shared/%%u:INBOX=/home/vmail/%%u/mail/.INBOX > > Does that imply that sharing the seen flag can not be used with sdbox? > > Thanks in advance, > Achim >Found if I do not define INDEXPVT for the shared location the seen flag is used common for all users. Would be nice to control that per shared folder. dovecot-shared does not seem to be used any longer, tought to find old docs on the internet at all.