Red Hat Bugzilla – Bug 157521
mutt segfaults when trying to connect to imap server
Last modified: 2014-03-16 22:53:54 EDT
Description of problem:
mutt segfaults when trying to connect to a remote IMAP server. Note that this
does not always happen, but when it does it seems repeatable. The certificate
is also expired, but the only impact was that I had to always accept the
certificate. Remote server runs RH 7.0 and the relevant imap service through
The series of messages is:
In the main screen->
This certificate belongs to:
This certificate was issued by:
This certificate is valid
from Aug 26 06:41:41 2002 GMT
to Aug 26 06:41:41 2003 GMT
Fingerprint: 1FE6 7164 31B7 84AE 2055 A9D6 35D5 4F90
In the status bar-> Mutt: SSL Certificate check
Below the status bar (in the following order)->
(r)eject, accept (o)nce, (a)ccept always
SSL connection using TLSv1/SSLv3 (DES-CBC3-SHA)
After that sequence it used to ask for my password.
Version-Release number of selected component (if applicable):
Sometimes, but if it occurs, it seems repeatable (i.e. it always crashes
afterwards). I haven't observed a pattern.
Steps to Reproduce:
1. start mutt
2. try to connect to remote imap server
3. mutt segfaults in checking the SSL certificate.
Additional info: System was a FC3 box upgraded to rawhide through yum.
Can you install the debuginfo and get a backtrace?
Created attachment 114325 [details]
Attached a backtrace with mutt debuginfo installed.
Created attachment 114326 [details]
backtrace with cyrus-sasl-debuginfo installed
I noticed that the last function is called from /usr/lib/libsasl2.so.2, which
belongs to cyrus-sasl, so I also installed the cyrus-sasl-debuginfo rpm.
Attached the (slightly) different backtrace.
I can't reproduce this here with the same version of mutt pointed to a local
imaps server. Can you connect to the server by running:
openssl s_client -showcerts -connect SERVERNAME:imaps
issuing a "0001 LOGOUT" command, and attaching the output? It shouldn't contain
anything sensitive (the certificate is by definition just the server's public
key), but it may shed some light on whether or not there's something specific
about the certificate which is causing mutt to segfault.
Created attachment 114663 [details]
output of "openssl s_client -showcerts -connect cnl.di.uoa.gr:imaps"
Attached output of the command.
I should note again that it does not segfault reliably, and that it only
exhibits the breakage behavior with the specific imap server (connecting to
another imap server seems just fine).
Created attachment 114664 [details]
full output of openssl commandline with "0001 LOGOUT" issued
Created attachment 114902 [details]
coredump of the procedure
Here we have the same problem on different hosts and it is reproducable.
Always when I try to connect to a remote IMAP-Server using
"mutt -f imap://<user>@host/INBOX"
I get asked if I accept the certificate and if I do so mutt segfaults.
Same problem when one has the following line ~/.muttrc:
This worked with mutt-1.4.1-10 in Fedora Core 3.
Albert/Markus - do you get the same backtrace?
I just tested again and now imap:// and imaps:// works. Strange. So somehow the
bug might be related to the IMAP server. I am running dovecot-0.99.14-4.fc4. I
also upgraded from FC3 -> FC4 (as opposed to a clean install).
It is possible that I have rebooted or that I have restarted dovecot since
reporting this problem.
I noticed some changes in /etc/doveconf.conf between FC3 and FC4, specifically
these lines changed (FC4 version shown below):
ssl_cert_file = /etc/pki/dovecot/dovecot.pem
ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
Cancel that. After having IMAP work for a while, it's segfaulting again now. I
haven't restarted dovecot or anything like that. I'll install the debug symbols
and see what is to be seen.
Same backtrace for me. In three consecutive runs under GDB it worked twice and
Very similar backtrace for same mutt error for me, with the difference that I'm
talking to a cyrus imap server and using gssapi for authentication. The odd
thing is that I have one FC4 system where it segfaults every time, and another
where it segfaults maybe one in ten tries. Both were installed using the same
kickstart, so I'm baffled. I'll attach my stack trace if it helps.
Created attachment 116085 [details]
backtrace, cyrus imapd / gssapi
after I tested it again right now mutt works when I use "mutt -f imaps://", but
"mutt -f imap://" with the same host segfaults!
Seems to me that it can't handle "SSL" while the URI says "imap://".
Last time I checked it both URIs segfaulted.
*** Bug 171528 has been marked as a duplicate of this bug. ***
This seems to be fixed in mutt-126.96.36.199-3 from fedora development.
It's not, see #171528...
Correction: GSSAPI seems to be fixed in mutt-188.8.131.52-3
Created attachment 120334 [details]
Fix, from the mutt devel tree
Here's the fix.
Are there any plans to release this as an FC4 update?