Problem with per-user \Seen flag on public folder

Bartek Szady bszx-dovecot at bszx.eu
Mon May 17 15:43:51 EEST 2021


Hello
I have noticed that when per-user \Seen flag is configured dovecot do
not respond properly to 'store' command. eg.:

===============
42 uid store 6 +Flags (\Seen)
42 OK Store completed (0.001 + 0.000 secs).
43 IDLE
+ idling
DONE
43 OK Idle completed (3.204 + 3.203 + 3.203 secs).
===============

Thunderbird is confused by this and read emails turns into unread after
a while.
When global flag is stored dovecot responds as it should, I think:

===============
32 uid store 3 -Flags (\Flagged)
* 2 FETCH (UID 3 FLAGS ())
32 OK Store completed (0.002 + 0.000 + 0.001 secs).
33 IDLE
+ idling
DONE
33 OK Idle completed (5.362 + 5.362 + 5.361 secs).
===============

When per-user \Seen flag is not configured:

===============
25 uid store 6 +Flags (\Seen)
* 4 FETCH (UID 6 FLAGS (\Seen))
25 OK Store completed (0.002 + 0.000 + 0.001 secs).
26 IDLE
+ idling
* OK Still here
DONE
26 OK Idle completed (65.076 + 65.076 + 65.076 secs).
===============


# doveconf -n
# 2.3.14 (cee3cbc0d): dovecot-int.conf
# OS: Linux 5.1.16 x86_64
# Hostname: #hidden
auth_mechanisms = plain login
base_dir = /var/run/dovecot-int
default_internal_group = dovecot1
default_internal_user = dovecot1
default_login_user = dovenull1
disable_plaintext_auth = no
login_log_format = int %$: %s
mail_debug = yes
mail_location = maildir:~/Mail/Maildir
mail_log_prefix = "int-%s(%u)<%{pid}><%{session}>: "
namespace {
  inbox = yes
  location =
  prefix =
  separator = /
  type = private
}
passdb {
  args = scheme=MD5-CRYPT /etc/dovecot/passwd-int
  driver = passwd-file
}
passdb {
  args = scheme=MD5-CRYPT /etc/dovecot/virtual-int
  driver = passwd-file
}
passdb {
  driver = pam
}
plugin {
  acl = vfile
}
protocols = pop3 imap
service auth {
  user = root
}
service imap-login {
  group = dovenull1
  inet_listener imap {
    address = <ips>
  }
  user = dovecot1
}
service pop3-login {
  group = dovenull1
  inet_listener pop3 {
    address = <ips>
  }
}
service stats {
  unix_listener stats-writer {
    mode = 0660
    user = pubmail
  }
}
ssl_cert = </var/lib/openssl/certs/imap-int.crt
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
userdb {
  args = /etc/dovecot/virtual-int
  driver = passwd-file
}
userdb {
  driver = passwd
}
protocol imap {
  mail_plugins = acl imap_acl
  namespace {
    location = maildir:/srv/mail/public:LAYOUT=fs:INDEXPVT=~/Mail/public
    prefix = publiczne/
    separator = /
    subscriptions = no
    type = public
  }
  ssl = yes
}


Bartek


More information about the dovecot mailing list