GNOME Bugzilla – Bug 677378
[abrt] Crash in imapx_query_auth_types_sync()
Last modified: 2012-11-21 11:39:17 UTC
Moving this from a downstream bug report: https://bugzilla.redhat.com/show_bug.cgi?id=827978 [abrt] evolution-3.4.1-2.fc17: imapx_query_auth_types_sync: Process /usr/bin/evolution was killed by signal 11 (SIGSEGV) libreport version: 2.0.10 abrt_version: 2.0.10 backtrace_rating: 4 cmdline: evolution comment: While setting up an IMAP+ server, I clicked "check for authentication types" or similar. I got an SSL warning, clicked Reject, and evolution crashed. crash_function: imapx_query_auth_types_sync executable: /usr/bin/evolution kernel: 3.3.7-1.fc17.x86_64 time: Sun 03 Jun 2012 03:51:57 PM PDT Core was generated by `evolution'. Program terminated with signal 11, Segmentation fault.
+ Trace 230304
Thread 4 (Thread 0x7fac0bb5f9c0 (LWP 12627))
The same bug report from 3.6.1: https://bugzilla.redhat.com/show_bug.cgi?id=868566
+ Trace 231075
Thread 1 (Thread 0x7f035ce23700 (LWP 3856))
Hmm, I cannot reproduce the crash. Apart of 3.6.1 not asking for self-signed SSL certificate trust, the crash didn't occur for me. I see from the backtrace that the server didn't return requested information, thus I can workaround the crash easily, but I'm not sure whether it's it. Could you run evolution like this: $ CAMEL_DEBUG=imapx evolution &>log.txt and reproduce the crash, please? The log.txt should contain communication between evolution and the IMAP+ server. I would like you to upload it here. Please make sure it'll not contain any private information, like passwords, email addresses or server addresses you do not want to share in public (the LOGIN command is already stripped).
While testing a new dovecot 2.0.9 installation I got a segfault in evolution. The segfault occurs when adding a new IMAP+ account where the encryption method is set to 'STARTTLS after connecting' and the 'Check for supported types' button is pressed. On the server side I got a message that the SSL certificate wasn't set up correctly yet so that may have caused a misbehavior in evolution. Before the segfault a critical warning occurred: (evolution:7380): camel-CRITICAL **: camel_session_alert_user: assertion `class->alert_user != NULL' failed Here's the backtrace belonging to the critical warning:
+ Trace 231206
Thread 140736370276096 (LWP 7504)
According to gdb the variable server->cinfo is NULL
Hm..bugzilla ate my backtraces. The previous comment contained 2 separate backtraces with some text between them but apparently bugzilla decided to merge them together in one trace..
(In reply to comment #3) > ... > (evolution:7380): camel-CRITICAL **: camel_session_alert_user: assertion > `class->alert_user != NULL' failed > ... > According to gdb the variable server->cinfo is NULL Right, the workaround, or maybe a correct fix, is to check for cinfo not being NULL. I'll try to address both issues here, which may involve changes on both eds and evo sides.
Created attachment 229565 [details] [review] eds patch for evolution-data-server; Check cinfo for NULL, before dereferencing it.
Created attachment 229566 [details] [review] evo patch for evolution; To get prompts of invalid/self-signed certificates, instead of a critical runtime warning on console.
Created commit d0d1eb1 in eds master (3.7.3+) Created commit ce64eb6 in evo master (3.7.3+) Created commit e0904c3 in eds gnome-3-6 (3.6.3+) Created commit 69d1356 in evo gnome-3-6 (3.6.3+)