Public NameSpace using sdbox with INDEXPVT for per-user-seen flags does not take into account the dovecot-shared file flag

Panayiotis Fafakos pfaf at wisdomsoftware.net
Mon Mar 29 09:06:10 EEST 2021


Thank you Aki, for your quick response.

*dovecot-shared* file flag should actually enable the *INDEXPVT *setting 
in the NameSpace for each mailbox it has been created in, as it did for 
INDEX setting.

Below folows the output of the `dovecot -n` command:
---------------------------------------------------------------------------------

auth_mechanisms = plain login
disable_plaintext_auth = no
imap_capability = +SPECIAL-USE XLIST
listen = *,[::]
lmtp_rcpt_check_quota = yes
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_attachment_dir = /ZSAFEMAIL/ATTACHED/attached
mail_attachment_min_size = 64 k
mail_max_userip_connections = 100
mail_plugins = quota acl
mail_privileged_group = vmail
namespace {
   inbox = no
   list = yes
   location = 
sdbox:/var/vmail/PublicFolders:LAYOUT=fs:DIRNAME=dbox-MailFolder:INDEXPVT=~/Maildir/public
   prefix = PublicFolders/
   separator = /
   subscriptions = no
   type = public
}
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 = /
   subscriptions = yes
   type = private
}
passdb {
   args = /etc/dovecot/dovecot-sql-master.conf.ext
   driver = sql
   master = yes
   pass = yes
}
passdb {
   args = /etc/dovecot/dovecot-sql.conf
   driver = sql
}
plugin {
   acl = vfile
   quota = dict:user::file:/var/vmail/%d/%n/.quotausage
   quota_status_nouser = DUNNO
   quota_status_overquota = 552 5.2.2 Mailbox is full
   quota_status_success = DUNNO
   sieve = /var/vmail/%d/%n/.sieve
   sieve_after = /var/vmail/%d/%n/.ispconfig.sieve
   sieve_before = /var/vmail/%d/%n/.ispconfig-before.sieve
   sieve_max_actions = 100
   sieve_max_redirects = 25
   sieve_max_script_size = 2M
}
protocols = imap pop3 lmtp
service auth {
   unix_listener /var/spool/postfix/private/auth {
     group = postfix
     mode = 0660
     user = postfix
   }
   unix_listener auth-userdb {
     group = vmail
     mode = 0600
     user = vmail
   }
   user = root
}
service imap-login {
   client_limit = 1000
   process_limit = 512
}
service lmtp {
   unix_listener /var/spool/postfix/private/dovecot-lmtp {
     group = postfix
     mode = 0600
     user = postfix
   }
}
service quota-status {
   client_limit = 1
   executable = quota-status -p postfix
   unix_listener /var/spool/postfix/private/quota-status {
     group = postfix
     mode = 0660
     user = postfix
   }
}
service stats {
   unix_listener stats-reader {
     group = vmail
     mode = 0660
     user = vmail
   }
   unix_listener stats-writer {
     group = vmail
     mode = 0660
     user = vmail
   }
}
ssl_cert = </etc/postfix/smtpd.cert
ssl_cipher_list = 
ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
ssl_min_protocol = TLSv1.2
userdb {
   driver = prefetch
}
userdb {
   args = /etc/dovecot/dovecot-sql.conf
   driver = sql
   override_fields = master_user=%u
}
protocol imap {
   auth_verbose = yes
   mail_plugins = quota imap_quota acl
}
protocol pop3 {
   auth_verbose = yes
   mail_plugins = quota
   pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
   mail_plugins = sieve quota
   postmaster_address = postmaster at ...
}
protocol lmtp {
   mail_plugins = quota sieve
   postmaster_address = postmaster at ...
}


----------------------------------------------------------------------------------

Is it a bug of some kind?

Thank you,

Panos.

On 29/3/2021 08:43, Aki Tuomi wrote:
>> On 29/03/2021 02:28 Panayiotis Fafakos <pfaf at wisdomsoftware.net> wrote:
>>
>>
>> Dear Timo,
>>   
>>   we have successfully used dovecot-shared file flag in MaildirPublicNameSpaces with private index files, to have per-user-seen flags for some but not all mailboxesunder public folders.
>>   This was actually done on older dovecot versions (i.e dovecot v2.2.33.2) , using a location setting in dovecot.conf like:
>>   location = maildir:/var/vmail/PublicFolders:LAYOUT=fs:DIRNAME=privDirMailFolder:INDEX=~/Maildir/public
>>   
>>   We try to use similar location setting using sdbox storage in dovecot v2.3.4.1, like below:
>>   location = sdbox:/var/vmail/PublicFolders:LAYOUT=fs:DIRNAME=dbox-MailFolder:INDEXPVT=~/Maildir/public
>>   but the dovecot-sharedfile flag seems to be ignored.
>>   As a result all mailboxes under public folders use the per-user-seen flags setting as set in the location setting, regardless of the existence of the dovecot-shared file flag or not.
>>   
>>   Is there any setting to use so that only some mailboxes under public folders use per-user-seen flags?
>>   
>>   Thank you in advance for your support,
>>   
>>   Panos Fafakos.
>>   
>>
> Hi Panos,
>
> INDEXPVT is a namespace level setting, not per-folder setting. I cannot see any "dovecot-sharedfile" flag, maybe provide `doveconf -n`?
>
> Aki

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dovecot.org/pipermail/dovecot/attachments/20210329/4bcf753d/attachment-0001.html>


More information about the dovecot mailing list