[Dovecot] Dovecot v2.2.4 (ebbe00999da8) doveadm crash

e-frog e-frog at gmx.de
Tue Jul 16 20:07:41 EEST 2013


Hello,

Current Dovecot v2.2 HG crashes using the following command:

$ doveadm mailbox status -A -t unseen 'virtual/unread'

Please see backtrace below and dovecot -n output attached.

Thanks,
e-frog

gdb /usr/bin/doveadm 24023
GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/doveadm...Reading symbols from 
/usr/lib/debug/usr/bin/doveadm...done.
done.
Attaching to program: /usr/bin/doveadm, process 24023

warning: unable to open /proc file '/proc/24023/status'

warning: unable to open /proc file '/proc/24023/status'
ptrace: No such process.
[New LWP 24023]

warning: Can't read pathname for load map: Input/output error.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
Core was generated by `doveadm mailbox status -A -t unseen virtual/unread'.
Program terminated with signal 11, Segmentation fault.
#0  i_stream_next_line (stream=0x0) at istream.c:382
382     istream.c: No such file or directory.
(gdb) bt full
#0  i_stream_next_line (stream=0x0) at istream.c:382
         _stream = <optimized out>
         pos = <optimized out>
#1  0xb754656b in auth_master_user_list_next (ctx=0xb91bfbd8) at 
auth-master.c:689
         line = <optimized out>
#2  0xb7634a0b in mail_storage_service_all_next (ctx=0xb91c4ba8, 
username_r=username_r at entry=0xbf8e6630) at mail-storage-service.c:1260
         __FUNCTION__ = "mail_storage_service_all_next"
#3  0xb7752d46 in doveadm_mail_cmd_get_next_user (ctx=0xb91be478, 
username_r=0xbf8e6630) at doveadm-mail.c:416
No locals.
#4  0xb7753e95 in doveadm_mail_all_users (wildcard_user=0x0, 
argv=0xb91ba1ec, ctx=0xb91be478) at doveadm-mail.c:368
         ret = <optimized out>
         input = {module = 0x0, service = 0xb77918f3 "doveadm", username 
= 0xb91bf8a0 "test1 at local.lan", session_id = 0x0, local_ip = {family = 
0, u = {
               ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, 
__u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, 
ip4 = {
                 s_addr = 0}}}, remote_ip = {family = 0, u = {ip6 = 
{__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 
0, 0, 0, 0, 0, 0},
                   __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, 
local_port = 0, remote_port = 0, userdb_fields = 0x0, flags_override_add 
= (unknown: 0),
           flags_override_remove = (unknown: 0), no_userdb_lookup = 0}
         user_idx = 0
         user = 0xb91bf8a0 "test1 at local.lan"
         error = 0x10 <Address 0x10 out of bounds>
#5  doveadm_mail_cmd (argv=0xb91ba1ec, argc=-1189371412, cmd=0xbf8e668c) 
at doveadm-mail.c:523
         ctx = 0xb91be478
         getopt_args = <optimized out>
         ret = <optimized out>
         c = <optimized out>
         wildcard_user = 0x0
         error = <optimized out>
#6  doveadm_mail_try_run (cmd_name=cmd_name at entry=0xb91ba200 "mailbox", 
argc=5, argc at entry=6, argv=argv at entry=0xb91ba1dc) at doveadm-mail.c:608
         cmd = 0xbf8e668c
#7  0xb7752903 in main (argc=6, argv=0xb91ba1dc) at doveadm.c:398
         cmd_name = 0xb91ba200 "mailbox"
         i = <optimized out>
         quick_init = false
         c = <optimized out>
(gdb)
-------------- next part --------------
# 2.2.4 (ebbe00999da8): /etc/dovecot/dovecot.conf
# OS: Linux 3.8.0-26-generic i686 Ubuntu 13.04
deliver_log_format = msgid=%m: from=%f: %$
dict {
  dictionary = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
imap_client_workarounds = tb-extra-mailbox-sep
imap_id_log = *
lda_mailbox_autocreate = yes
mail_gid = vmail
mail_home = /home/vmail/%Ld/%Ln
mail_location = mdbox:~/mdbox
mail_plugins = quota virtual fts fts_lucene
mail_uid = vmail
mailbox_list_index = 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 vnd.dovecot.duplicate vnd.dovecot.pipe
namespace inbox {
  hidden = no
  inbox = yes
  list = yes
  location =
  prefix =
  separator = /
  subscriptions = yes
  type = private
}
namespace virtual {
  location = virtual:~/virtual
  prefix = virtual/
  separator = /
  subscriptions = no
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
plugin {
  antispam_backend = spool2dir
  antispam_spam = Junk
  antispam_spool2dir_notspam = /home/vmail/learn-ham/%%020lu-%u-%%05luh
  antispam_spool2dir_spam = /home/vmail/learn-spam/%%020lu-%u-%%05lus
  antispam_trash = Trash
  fts = lucene
  fts_lucene = whitespace_chars=@.
  mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename append
  mail_log_fields = uid box from subject msgid size flags
  quota = dict:user::proxy::dictionary
  sieve = ~/dovecot.sieve
  sieve_before = /home/vmail/etc/sieve-global/
  sieve_dir = ~/sieve
  sieve_extensions = +vnd.dovecot.pipe +vnd.dovecot.duplicate
  sieve_pipe_bin_dir = /home/vmail/etc/sieve-pipe
  sieve_pipe_exec_timeout = 30s
  sieve_plugins = sieve_extprograms
}
postmaster_address = postmaster at localhost.lan
protocols = " imap lmtp sieve"
quota_full_tempfail = yes
service anvil {
  unix_listener anvil {
    user = vmail
  }
}
service auth {
  unix_listener /var/spool/postfix/private/dovecot-auth {
    group = postfix
    mode = 0660
    user = postfix
  }
  unix_listener auth-userdb {
    mode = 0600
    user = vmail
  }
}
service config {
  unix_listener config {
    mode = 0600
    user = vmail
  }
}
service dict {
  unix_listener dict {
    mode = 0600
    user = vmail
  }
}
service imap-login {
  inet_listener imaps {
    port = 0
  }
  process_min_avail = 2
  service_count = 0
}
service imap {
  executable = imap postlogin
}
service lmtp {
  process_min_avail = 2
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
    group = postfix
    mode = 0660
    user = postfix
  }
  user = vmail
}
service postlogin {
  executable = script-login /home/vmail/bin/dovecot-postlogin.sh
  user = vmail
}
ssl = required
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
verbose_proctitle = yes
protocol lmtp {
  mail_plugins = quota virtual fts fts_lucene sieve
}
protocol imap {
  mail_max_userip_connections = 20
  mail_plugins = quota virtual fts fts_lucene imap_quota antispam mail_log notify
}


More information about the dovecot mailing list