Hi,

I'm running dovecot 2.1.10 on Debian 6.

When I run "doveadm expunge -A mailbox Trash savedbefore 30d" it crash with "Segmentation fault"

[15022673.496902] doveadm[13072]: segfault at 8 ip 00007f4b7041f551 sp 00007fffdab4f8c0 error 4 in lib01_acl_plugin.so[7f4b70415000+10000]

If I add -D to doveadm I can see this:

doveadm(myu...@mydomain.com): Debug: Added userdb setting: plugin/quota_rule=*:backend=524288000S doveadm(myu...@mydomain.com): Debug: Effective uid=89, gid=89, home=/home/vpopmail/domains/2/mydomain.com/myuser doveadm(myu...@mydomain.com): Debug: Quota root: name=UserQuota backend=maildir args= doveadm(myu...@mydomain.com): Debug: Quota rule: root=UserQuota mailbox=* bytes=524288000 messages=0 doveadm(myu...@mydomain.com): Debug: Quota rule: root=UserQuota mailbox=Trash bytes=+104857600 messages=0 doveadm(myu...@mydomain.com): Debug: Quota root: name=User quota backend=dict args=:noenforcing:proxy::quota doveadm(myu...@mydomain.com): Debug: dict quota: user=myu...@mydomain.com, uri=proxy::quota, noenforcing=1 doveadm(myu...@mydomain.com): Debug: Namespace inbox: type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/Maildir doveadm(myu...@mydomain.com): Debug: maildir++: root=/home/vpopmail/domains/2/mydomain.com/myuser/Maildir, index=, control=, inbox=/home/vpopmail/domains/2/mydomain.com/myuser/Maildir, alt= doveadm(myu...@mydomain.com): Debug: acl: initializing backend with data: vfile:/usr/local/dovecot-2.1/etc/dovecot/global-acls:cache_secs=300 doveadm(myu...@mydomain.com): Debug: acl: acl username = myu...@mydomain.com
doveadm(myu...@mydomain.com): Debug: acl: owner = 1
doveadm(myu...@mydomain.com): Debug: acl vfile: Global ACL directory: /usr/local/dovecot-2.1/etc/dovecot/global-acls doveadm(myu...@mydomain.com): Debug: Namespace : type=shared, prefix=shared/%n/, sep=/, inbox=no, hidden=no, list=children, subscriptions=no location=maildir:%h/Maildir:INDEX=~/Maildir/shared/%u doveadm(myu...@mydomain.com): Debug: shared: root=/usr/local/dovecot-2.1/var/run/dovecot, index=, control=, inbox=, alt= doveadm(myu...@mydomain.com): Debug: acl: initializing backend with data: vfile:/usr/local/dovecot-2.1/etc/dovecot/global-acls:cache_secs=300 doveadm(myu...@mydomain.com): Debug: acl: acl username = myu...@mydomain.com
doveadm(myu...@mydomain.com): Debug: acl: owner = 0
doveadm(myu...@mydomain.com): Debug: acl vfile: Global ACL directory: /usr/local/dovecot-2.1/etc/dovecot/global-acls
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=276
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=277
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=278
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=279
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=280
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=281
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=282
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=283
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=284
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=285
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=286
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=287
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=288
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=289
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=290
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=291
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=292
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=293
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=294
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=295
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=296
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=297
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=298
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=299
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=300
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=301
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=302
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=303
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=304
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=305
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=306
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=307
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=308
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=309
doveadm(myu...@mydomain.com): Debug: expunge: box=Trash uid=310
doveadm(myu...@mydomain.com): Debug: acl vfile: file /usr/local/dovecot-2.1/etc/dovecot/global-acls//.DEFAULT not found doveadm(myu...@mydomain.com): Debug: Namespace : Using permissions from /home/vpopmail/domains/2/mydomain.com/myuser/Maildir: mode=0700 gid=-1 doveadm(myu...@mydomain.com): Debug: acl vfile: file /usr/local/dovecot-2.1/etc/dovecot/global-acls/Drafts not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /home/vpopmail/domains/2/mydomain.com/myuser/Maildir/.Drafts/dovecot-acl not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /usr/local/dovecot-2.1/etc/dovecot/global-acls/Spam not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /home/vpopmail/domains/2/mydomain.com/myuser/Maildir/.Spam/dovecot-acl not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /usr/local/dovecot-2.1/etc/dovecot/global-acls/Sent not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /home/vpopmail/domains/2/mydomain.com/myuser/Maildir/.Sent/dovecot-acl not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /usr/local/dovecot-2.1/etc/dovecot/global-acls/Trash not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /home/vpopmail/domains/2/mydomain.com/myuser/Maildir/.Trash/dovecot-acl not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /usr/local/dovecot-2.1/etc/dovecot/global-acls/INBOX not found doveadm(myu...@mydomain.com): Debug: acl vfile: file /home/vpopmail/domains/2/mydomain.com/myuser/Maildir/dovecot-acl not found
Segmentation fault

If I disable "acl" plugin in dovecot all works fine. I think that this problem is connected with "Dovecot deliver Segmentation fault when arrive the first message" http://www.dovecot.org/list/dovecot/2012-September/068343.html that I'm still experiencing.

How can get core dumps from "doveadm"?

This is my dovecot config with acl enabled:

# 2.1.10: /usr/local/dovecot-2.1/etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.6
auth_cache_size = 512 k
auth_worker_max_count = 60
default_login_user = nobody
dict {
acl = mysql:/usr/local/dovecot-2.1/etc/dovecot/dovecot-share-folder.conf quota = mysql:/usr/local/dovecot-2.1/etc/dovecot/dovecot-dict-sql.conf.ext
}
disable_plaintext_auth = no
dotlock_use_excl = no
first_valid_gid = 89
first_valid_uid = 89
last_valid_gid = 89
last_valid_uid = 89
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
log_path = /var/log/dovecot/dovecot.log
mail_fsync = always
mail_location = maildir:~/Maildir
mail_nfs_index = yes
mail_nfs_storage = yes
mail_plugins = quota acl
maildir_very_dirty_syncs = yes
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
mmap_disable = yes
namespace {
  list = children
  location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u
  prefix = shared/%%n/
  separator = /
  subscriptions = no
  type = shared
}
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox Spam {
    auto = subscribe
    special_use = \Junk
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  prefix =
  separator = /
}
passdb {
  args = /usr/local/dovecot-2.1/etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
plugin {
acl = vfile:/usr/local/dovecot-2.1/etc/dovecot/global-acls:cache_secs=300
  acl_shared_dict = proxy::acl
  quota = maildir:UserQuota
  quota2 = dict:User quota::noenforcing:proxy::quota
  quota_rule2 = Trash:storage=+100M
  sieve = ~/.dovecot.sieve
sieve_default = /usr/local/dovecot-2.1/etc/dovecot/sieve/default.sieve
  sieve_dir = ~/sieve
}
protocols = imap pop3 sieve
sendmail_path = /var/qmail/bin/sendmail
service auth {
  unix_listener auth-userdb {
    group = vchkpw
    mode = 0660
    user = vpopmail
  }
}
service dict {
  unix_listener dict {
    group = vchkpw
    mode = 0660
    user = vpopmail
  }
}
service imap-login {
  service_count = 0
}
service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
}
service pop3-login {
  service_count = 0
}
ssl_cert = </etc/ssl/certs/wildcard.net.pem
ssl_key = </etc/ssl/private/wildcard.net.key
userdb {
  args = /usr/local/dovecot-2.1/etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocol lda {
  log_path = /var/log/dovecot/lda.log
  mail_plugins = quota acl sieve
}
protocol imap {
imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub-flags
  mail_max_userip_connections = 20
  mail_plugins = quota acl imap_quota imap_acl
}
protocol sieve {
  mail_max_userip_connections = 10
}
protocol pop3 {
  mail_max_userip_connections = 5
  pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
}

Thanks



Reply via email to