Segfault report

Daniel Miller dmiller at amfes.com
Wed Dec 26 11:26:11 EET 2018


Ubuntu 18.04, AMD Opteron, Dovecot Version 2.3.3, local file storage.  I 
believe it's one of my users checking mail remotely via mobile - don't 
remember if it's an iPhone or Android.

gdb backtrace:
Reading symbols from /usr/local/libexec/dovecot/imap...done.
[New LWP 13852]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `dovecot/imap [kkhany at amfes.c'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  event_want_debug_log (event=event at entry=0x0, 
source_filename=source_filename at entry=0x7efd84178aa3 "mail-storage.c",
     source_linenum=source_linenum at entry=1261) at event-log.c:120
120             if (event->forced_debug)
(gdb) bt full
#0  event_want_debug_log (event=event at entry=0x0, 
source_filename=source_filename at entry=0x7efd84178aa3 "mail-storage.c",
     source_linenum=source_linenum at entry=1261) at event-log.c:120
         ctx = {type = LOG_TYPE_DEBUG, exit_status = 0, timestamp = 0x0, 
timestamp_usecs = 0, log_prefix = 0x0,
           log_prefix_type_pos = 0}
#1  0x00007efd83dc0986 in event_want_debug (event=event at entry=0x0,
     source_filename=source_filename at entry=0x7efd84178aa3 
"mail-storage.c", source_linenum=source_linenum at entry=1261)
     at event-log.c:140
No locals.
#2  0x00007efd840bf270 in mailbox_open_full 
(box=box at entry=0x55704dc81058, input=input at entry=0x0) at mail-storage.c:1259
         _tmp_event = 0x0
         ret = <optimized out>
#3  0x00007efd840bf57a in mailbox_open_full (input=0x0, 
box=0x55704dc81058) at mail-storage.c:1368
         ret = <optimized out>
         ret = <optimized out>
         _tmp_event = <optimized out>
         _data_stack_cur_id = <optimized out>
         _data_stack_cur_id = <optimized out>
#4  mailbox_open (box=0x55704dc81058) at mail-storage.c:1349
No locals.
#5  0x000055704c36a31b in select_open (readonly=false, 
mailbox=<optimized out>, ctx=0x55704dc13bc8) at cmd-select.c:288
         client = 0x55704dc11de8
         status = {messages = 1830951344, recent = 32766, unseen = 
2391910144, uidvalidity = 1475818629, uidnext = 1830951424,
           first_unseen_seq = 32766, first_recent_uid = 1832402502, 
last_cached_seq = 32766, highest_modseq = 0,
           highest_pvt_modseq = 4294967296, keywords = 0x55704dbf1380, 
permanent_flags = 1280910144, flags = 21872,
           permanent_keywords = false, allow_new_keywords = false, 
nonpermanent_modseqs = false, no_modseq_tracking = false,
           have_guids = false, have_save_guids = true, have_only_guid128 
= false}
         flags = <optimized out>
---Type <return> to continue, or q <return> to quit---
         ret = 0
         client = <optimized out>
         status = <optimized out>
         flags = <optimized out>
         ret = <optimized out>
#6  cmd_select_full (cmd=<optimized out>, readonly=<optimized out>) at 
cmd-select.c:417
         client = 0x55704dc11de8
         ctx = <optimized out>
         args = 0x55704dbef690
         list_args = 0x5d0000006e
         mailbox = 0x55704dbe1540 "shared"
         error = 0x55704dc11de8 ""
         ret = <optimized out>
         __func__ = "cmd_select_full"
#7  0x000055704c371e30 in command_exec (cmd=cmd at entry=0x55704dc13a38) at 
imap-commands.c:201
         hook = 0x55704dbeb0f0
         finished = <optimized out>
         __func__ = "command_exec"
#8  0x000055704c3701d2 in client_command_input (cmd=<optimized out>, 
cmd at entry=0x55704dc13a38) at imap-client.c:1152
         client = 0x55704dc11de8
         command = <optimized out>
         __func__ = "client_command_input"
#9  0x000055704c370274 in client_command_input (cmd=<optimized out>) at 
imap-client.c:1215
         client = 0x55704dc11de8
         command = <optimized out>
         __func__ = "client_command_input"
#10 0x000055704c370675 in client_handle_next_command 
(remove_io_r=<synthetic pointer>, client=0x55704dc11de8) at 
imap-client.c:1257
---Type <return> to continue, or q <return> to quit---
No locals.
#11 client_handle_input (client=0x55704dc11de8) at imap-client.c:1271
         _data_stack_cur_id = 3
         ret = <optimized out>
         remove_io = false
         ret = <optimized out>
         remove_io = <optimized out>
         client = 0x55704dc11de8
         handled_commands = <optimized out>
         _data_stack_cur_id = <optimized out>
         ret = <optimized out>
         remove_io = <optimized out>
         _data_stack_cur_id = <optimized out>
#12 0x000055704c370ccc in client_input (client=0x55704dc11de8) at 
imap-client.c:1317
         cmd = 0x55704dc0bcb0
         output = 0x55704dc2d150
         bytes = 17
         __func__ = "client_input"
#13 0x00007efd83ddae0f in io_loop_call_io (io=0x55704dc13910) at 
ioloop.c:698
         ioloop = 0x55704dbe9ee0
         t_id = 2
         __func__ = "io_loop_call_io"
#14 0x00007efd83ddc7c6 in io_loop_handler_run_internal 
(ioloop=ioloop at entry=0x55704dbe9ee0) at ioloop-epoll.c:221
         ctx = 0x55704dbedc00
         events = <optimized out>
         event = <optimized out>
         list = 0x55704dc13970
---Type <return> to continue, or q <return> to quit---
         io = <optimized out>
         tv = {tv_sec = 1799, tv_usec = 999365}
         events_count = <optimized out>
         msecs = <optimized out>
         ret = <optimized out>
         i = 0
         j = <optimized out>
         call = <optimized out>
         __func__ = "io_loop_handler_run_internal"
#15 0x00007efd83ddaf1c in io_loop_handler_run (ioloop=<optimized out>) 
at ioloop.c:750
No locals.
#16 0x00007efd83ddb138 in io_loop_run (ioloop=0x55704dbe9ee0) at 
ioloop.c:723
         __func__ = "io_loop_run"
#17 0x00007efd83d50873 in master_service_run (service=0x55704dbe9d70, 
callback=<optimized out>) at master-service.c:775
No locals.
#18 0x000055704c362611 in main (argc=<optimized out>, argv=<optimized 
out>) at main.c:521
         set_roots = {0x55704c5909a0 <smtp_submit_setting_parser_info>, 
0x55704c5906c0 <imap_setting_parser_info>, 0x0}
         login_set = {auth_socket_path = 0x55704dbe12a8 "\340\022\276MpU",
           postlogin_socket_path = 0x55704dbe12f0 "m 174.237.3.103 
SELECT]", postlogin_timeout_secs = 60,
           callback = 0x55704c37ed60 <login_client_connected>, 
failure_callback = 0x55704c37e530 <login_client_failed>,
           request_auth_token = true}
         service_flags = <optimized out>
         storage_service_flags = <optimized out>
         username = 0x0
         auth_socket_path = <optimized out>
         c = <optimized out>
         error = 0x0

doveconf -n:

# 2.3.3 (dcead646b): /usr/local/etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.3 (f018bbab)
# OS: Linux 4.15.0-43-generic x86_64 Ubuntu 18.04.1 LTS
# Hostname: bubba.amfes.lan
auth_cache_size = 4 k
auth_master_user_separator = *
auth_mechanisms = plain login
default_login_user = nobody
default_vsz_limit = 1 G
dict {
   acl = mysql:/usr/local/etc/dovecot/dovecot-dict-sql.conf.ext
}
disable_plaintext_auth = no
imap_client_workarounds = tb-extra-mailbox-sep
imap_idle_notify_interval = 29 mins
listen = *
mail_attachment_hash = %{sha512}
mail_plugins = fts fts_solr acl zlib virtual
mail_prefetch_count = 10
mail_shared_explicit_inbox = 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 index ihave duplicate mime foreverypart extracttext
namespace inbox {
   hidden = no
   inbox = yes
   list = yes
   location =
   mailbox "Deleted Messages" {
     auto = no
     autoexpunge = 30 days
     special_use = \Trash
   }
   mailbox Drafts {
     auto = subscribe
     special_use = \Drafts
   }
   mailbox INBOX/Archives {
     auto = no
     special_use = \Archive
   }
   mailbox Sent {
     auto = subscribe
     special_use = \Sent
   }
   mailbox "Sent Items" {
     auto = no
     special_use = \Sent
   }
   mailbox "Sent Messages" {
     auto = no
     special_use = \Sent
   }
   mailbox Trash {
     auto = subscribe
     autoexpunge = 30 days
     special_use = \Trash
   }
   mailbox virtual/Flagged {
     comment = All my flagged messages
     special_use = \Flagged
   }
   prefix =
   separator = /
   subscriptions = yes
   type = private
}
namespace usershares {
   list = children
   location = sdbox:/var/mail/%%d/%%n/sdbox
   prefix = shared/%%n/
   separator = /
   subscriptions = no
   type = shared
}
namespace virtual {
   list = children
   location = virtual:/var/mail/%d/%n/virtual
   prefix = virtual/
   separator = /
   subscriptions = no
}
passdb {
   args = /usr/local/etc/dovecot/master-users
   driver = passwd-file
   master = yes
}
passdb {
   args = /usr/local/etc/dovecot/dovecot-ldap.conf.ext
   driver = ldap
}
plugin {
   acl = vfile:/usr/local/etc/dovecot/global-acls:cache_secs=300
   acl_shared_dict = proxy::acl
   fts = solr
   fts_autoindex = yes
   fts_solr = break-imap-search url=http://127.0.0.1:8983/solr/dovecot/
   mailbox_alias_new = Sent Messages
   mailbox_alias_new2 = Sent Items
   mailbox_alias_new3 = Deleted Messages
   mailbox_alias_old = Sent
   mailbox_alias_old2 = Sent
   mailbox_alias_old3 = Trash
   sieve = file:~/sieve;active=~/.dovecot.sieve
}
protocols = imap lmtp sieve
service auth {
   unix_listener /var/spool/postfix/private/auth {
     group = postfix
     mode = 0660
     user = postfix
   }
   unix_listener auth-userdb {
     group = mail
     mode = 0600
     user = vmail
   }
}
service dict {
   unix_listener dict {
     group = mail
     mode = 0660
     user = vmail
   }
}
service imap-login {
   process_min_avail = 10
   service_count = 1
}
service imap-postlogin {
   executable = script-login /usr/local/etc/dovecot/post-login.sh
   user = $default_internal_user
}
service imap {
   executable = imap imap-postlogin
}
service lmtp {
   process_min_avail = 5
   unix_listener /var/spool/postfix/private/dovecot-lmtp {
     group = mail
     mode = 0666
     user = vmail
   }
}
service managesieve-login {
   inet_listener sieve {
     port = 4190
   }
   inet_listener sieve_deprecated {
     port = 2000
   }
   process_min_avail = 0
   service_count = 1
}
ssl_cert = </etc/letsencrypt/live/mail.amfes.com/fullchain.pem
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
userdb {
   driver = prefetch
}
userdb {
   args = /usr/local/etc/dovecot/dovecot-ldap.conf.ext
   driver = ldap
}
verbose_proctitle = yes
protocol lmtp {
   mail_plugins = fts fts_solr acl zlib virtual sieve
   postmaster_address = postmaster at amfes.com
}
protocol lda {
   mail_plugins = fts fts_solr acl zlib virtual sieve
}
protocol imap {
   mail_max_userip_connections = 50
   mail_plugins = fts fts_solr acl zlib virtual imap_acl imap_zlib 
mailbox_alias
}
local 192.168.0.2 {
   protocol imap {
     ssl_cert = </etc/letsencrypt/live/mail.amfes.com/fullchain.pem
     ssl_key = # hidden, use -P to show it
   }
}


-- 
Daniel



More information about the dovecot mailing list