Hello List,

with dovecot version 2.2.13.9, I actually have a problem using lazy_expunge and acl together.

Shared/Public Folders work fine with lazy_expunge disabled.
If lazy_expunge is enabled and userA got a shared folder form userB, then there is the error shown in subject.

My test case to reproduce the error.

doveadm mailbox list -u userA@domain
--> Output Fine.
doveadm acl set -u userB@domain INBOX user=userA@domain lookup read write write-seen write-deleted insert expunge create
--> Fine.
doveadm mailbox list -u userA@domain
--> Some output and then:
--> doveadm(userA@domain): Fatal: lazy_expunge: Unknown namespace: '.EXPUNGED/'

I think this is a bug in dovecot, can someone of the dovecot developers or someone else confirm this?
If it is not please show me the fault in my configuration.

In May 2014 there was a thread with the same issue on this mailing list, but with no solution.
http://dovecot.org/pipermail/dovecot/2014-May/096355.html

Best regards

Philipp Fäustlin
---------------------------------------------
# 2.2.13.9 (19befd72d9d8): /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-431.11.2.el6.x86_64 x86_64 Scientific Linux release 6.5 (Carbon)
auth_debug = yes
auth_mechanisms = plain login
auth_socket_path = /var/run/dovecot/auth-userdb
auth_username_format = %Ln
auth_verbose = yes
listen = *
mail_debug = yes
mail_gid = vmail
mail_location = maildir:~/maildir
mail_plugins = " acl lazy_expunge mail_log notify zlib notify replication"
mail_shared_explicit_inbox = yes
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 ihave duplicate
namespace {
  hidden = no
  ignore_on_failure = no
  inbox = no
  list = children
  location = maildir:%%h/maildir:INDEX=%h/Shared/%%u:CONTROL=%h/Shared/%%u
  prefix = Shared/%%u/
  separator = /
  subscriptions = yes
  type = shared
}
namespace {
  location = maildir:/vmail/%d/public:INDEXPVT=~/index/%d/public
  prefix = Groups/
  separator = /
  subscriptions = no
  type = public
}
namespace {
  hidden = yes
  list = no
  location = maildir:~/expunged
  prefix = .EXPUNGED/
  separator = /
  subscriptions = no
  type = private
}
namespace inbox {
  inbox = yes
  list = yes
  location =
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  prefix =
  separator = /
  subscriptions = yes
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
plugin {
  acl = vfile:/etc/dovecot/global-acls
  acl_shared_dict = file:/var/lib/dovecot/db/shared-mailboxes.db
  lazy_expunge = .EXPUNGED/
  lazy_expunge_only_last_instance = yes
mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename
  mail_log_fields = uid box msgid size
  mail_replica = tcps:mailhost1.rz.uni-hohenheim.de:12345
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  zlib_save = gz
  zlib_save_level = 6
}
protocols = imap pop3 lmtp sieve
replication_dsync_parameters = -d -l 30 -U
service aggregator {
  fifo_listener replication-notify-fifo {
    mode = 0666
    user = vmail
  }
  unix_listener replication-notify {
    mode = 0666
    user = vmail
  }
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
  unix_listener auth-userdb {
    group = vmail
    mode = 0660
    user = vmail
  }
}
service doveadm {
  inet_listener {
    port = 12345
    ssl = yes
  }
}
service imap-login {
  process_min_avail = 16
  service_count = 0
}
service imap-postlogin {
  executable = script-login /usr/local/bin/postlogin.sh
  user = $default_internal_user
}
service imap {
  executable = imap imap-postlogin
  process_limit = 8192
}
service lmtp {
  unix_listener /var/spool/postfix/private/lmtp-dovecot {
    group = postfix
    user = postfix
  }
}
service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
}
service pop3-login {
  process_min_avail = 16
  service_count = 0
}
service pop3 {
  process_limit = 8192
}
service replicator {
  process_min_avail = 1
  unix_listener replicator-doveadm {
    group = vmail
    mode = 0660
  }
}
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_client_ca_file = /etc/openldap/cacerts/chain.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
userdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
verbose_proctitle = yes
protocol lmtp {
mail_plugins = " acl lazy_expunge mail_log notify zlib notify replication sieve"
}
protocol imap {
mail_plugins = " acl lazy_expunge mail_log notify zlib notify replication imap_acl imap_zlib"
}

Reply via email to