[Dovecot] Bug report

Ramon rorru at babel.it
Tue Feb 18 16:10:12 UTC 2014


I'm using release 2.2.12, during a copy operation i get segfault on imap 
process. I have full bt of the issue:

(gdb) bt
#0  0x00007fcc521029cd in mail_cache_header_fields_read 
(cache=0x15c7210) at mail-cache-fields.c:369
#1  0x00007fcc52100664 in mail_cache_open_and_verify (cache=0x15c7210) 
at mail-cache.c:497
#2  0x00007fcc5210244d in mail_cache_register_get_list (cache=0x15c7210, 
pool=0x1573608, count_r=0x7fff7b3b2418) at mail-cache-fields.c:194
#3  0x00007fcc520ef845 in index_mail_parse_header_register_all_wanted 
(mail=0x15d4b60, headers=<value optimized out>) at index-mail-headers.c:170
#4  index_mail_parse_header_init (mail=0x15d4b60, headers=<value 
optimized out>) at index-mail-headers.c:230
#5  0x00007fcc520efdb8 in index_mail_cache_parse_init (_mail=0x15d4b60, 
input=0x15ddb38) at index-mail-headers.c:376
#6  0x00007fcc520bb163 in maildir_save_add (_ctx=0x15d3b20, 
tmp_fname=0x15735e8 "1392731650.M182940P5176.pecpop5", src_mail=0x0) at 
maildir-save.c:225
#7  0x00007fcc520bb4b8 in maildir_save_begin (_ctx=0x15d3b20, 
input=0x15debb8) at maildir-save.c:415
#8  0x00007fcc511e7360 in quota_save_begin (ctx=0x15d3b20, 
input=0x15debb8) at quota-storage.c:274
#9  0x00007fcc520cc182 in mailbox_save_begin (ctx=0x7fff7b3b25a8, 
input=0x15debb8) at mail-storage.c:2025
#10 0x00007fcc520c6242 in mail_storage_try_copy (ctx=0x15d3b20, 
mail=<value optimized out>) at mail-copy.c:76
#11 mail_storage_copy (ctx=0x15d3b20, mail=<value optimized out>) at 
mail-copy.c:101
#12 0x00007fcc520b6916 in maildir_copy (ctx=0x15d3b20, mail=0x15cf300) 
at maildir-copy.c:148
#13 0x00007fcc50dd7461 in notify_copy (ctx=0x15d3b20, mail=0x15cf300) at 
notify-storage.c:107
#14 0x00007fcc511e7183 in quota_copy (ctx=0x15d3b20, mail=0x15cf300) at 
quota-storage.c:220
#15 0x00007fcc520cc01f in mailbox_copy (_ctx=<value optimized out>, 
mail=0x15cf300) at mail-storage.c:2133
#16 0x000000000040c63b in fetch_and_copy (cmd=0x1593810, move=false) at 
cmd-copy.c:70
#17 cmd_copy_full (cmd=0x1593810, move=false) at cmd-copy.c:123
#18 0x0000000000416fbd in command_exec (cmd=0x1593810) at 
imap-commands.c:158
#19 0x00000000004160e0 in client_command_input (cmd=0x1593810) at 
imap-client.c:780
#20 0x00000000004161cd in client_command_input (cmd=0x1593810) at 
imap-client.c:841
#21 0x000000000041644d in client_handle_next_command (client=0x1592fb0) 
at imap-client.c:879
#22 client_handle_input (client=0x1592fb0) at imap-client.c:891
#23 0x00000000004167bf in client_input (client=0x1592fb0) at 
imap-client.c:933
#24 0x00007fcc51e1f336 in io_loop_call_io (io=0x158c1d0) at ioloop.c:388
#25 0x00007fcc51e203a7 in io_loop_handler_run (ioloop=<value optimized 
out>) at ioloop-epoll.c:220
#26 0x00007fcc51e1f2a8 in io_loop_run (ioloop=0x157b720) at ioloop.c:412
#27 0x00007fcc51dcdf73 in master_service_run (service=0x157b5b0, 
callback=<value optimized out>) at master-service.c:566
#28 0x000000000041fd07 in main (argc=1, argv=0x157b390) at main.c:400

Here's config:

auth_debug = yes
auth_master_user_separator = *
auth_username_format =
default_vsz_limit = 512 M
disable_plaintext_auth = no
dotlock_use_excl = no
first_valid_gid = 101
first_valid_uid = 102
imap_id_send =
import_environment = TZ
info_log_path = /var/log/dovecot.log
log_path = /var/log/dovecot.log
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_fsync = always
mail_gid = 101
mail_location = maildir:%h/Maildir
mail_max_userip_connections = 50
mail_nfs_index = yes
mail_nfs_storage = yes
mail_plugins = quota expire fts fts_lucene mail_log notify
mail_uid = 102
maildir_broken_filename_sizes = 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
mbox_write_locks = fcntl
mmap_disable = yes
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 = INBOX.
    separator = .
    subscriptions = yes
    type = private
}
passdb {
    args = /opt/dovecot-2.2.10/etc/dovecot/passwd.masterusers
    driver = passwd-file
    master = yes
}
passdb {
    args = /opt/dovecot-2.2.10/etc/dovecot/dovecot-ldap.conf
    driver = ldap
}
passdb {
    args = /opt/dovecot-2.2.10/etc/dovecot/dovecot-ldap-multiuser.conf
    driver = ldap
    master = yes
}
plugin {
    fts = lucene
    fts_lucene =
    mail_log_events = delete undelete expunge copy mailbox_delete
mailbox_rename
    mail_log_fields = uid box msgid size
    quota = maildir
    quota_rule2 = INBOX.Trash:storage=+100M
}
protocols = imap pop3
service anvil {
    client_limit = 3000
}
service auth {
    client_limit = 4096
    unix_listener auth-userdb {
      mode = 0600
    }
}
service imap-login {
    inet_listener imap {
      address = 10.11.47.49
      port = 143
    }
    inet_listener imaps {
      address = 10.11.47.49
      port = 993
      ssl = yes
    }
    process_limit = 2500
    process_min_avail = 5
}
service imap {
    drop_priv_before_exec = yes
    process_limit = 2500
    process_min_avail = 5
}
service managesieve-login {
    inet_listener sieve {
      port = 4190
    }
    process_min_avail = 0
    service_count = 1
    vsz_limit = 64 M
}
service managesieve {
    drop_priv_before_exec = yes
    process_limit = 1024
}
service pop3-login {
    inet_listener pop3 {
      address = 10.11.47.49
      port = 110
    }
    inet_listener pop3s {
      address = 10.11.47.49
      port = 995
      ssl = yes
    }
    process_limit = 300
    process_min_avail = 5
}
service pop3 {
    drop_priv_before_exec = yes
    process_limit = 300
    process_min_avail = 5
}
ssl_cert = </opt/dovecot-2.2.10/certs/imapd.pem
ssl_key = </opt/dovecot-2.2.10/certs/imapd.pem
userdb {
    args = /opt/dovecot-2.2.10/etc/dovecot/dovecot-ldap.conf
    driver = ldap
}
protocol lmtp {
    mail_plugins = quota expire fts fts_lucene mail_log notify sieve
}
protocol lda {
    mail_plugins = quota expire fts fts_lucene mail_log notify sieve
}
protocol imap {
    mail_plugins = quota imap_quota mail_log notify
}
protocol pop3 {
    mail_plugins = quota mail_log notify
    pop3_uidl_format = UID%u-%v
}

Regards,
Ramon



More information about the dovecot mailing list