evolution crashed with SIGSEGV trying to authenticate with MAPI

Bug #348621 reported by Timothy Alexander
8
Affects Status Importance Assigned to Milestone
openchange (Ubuntu)
Invalid
Medium
Unassigned

Bug Description

Binary package hint: evolution

Using Jaunty.

Tried to setup auth against an exchange 2007 server, using the evolution-mapi plugin. First time it returned an error that it couldn't auth. Retyped my password, and evolution died, and apport popped up asking me to submit a bug.

The exchange server is SSL encrypted in the outlook settings. Might be the issue....

ProblemType: Crash
Architecture: i386
DistroRelease: Ubuntu 9.04
ExecutablePath: /usr/bin/evolution
Package: evolution 2.26.0-0ubuntu2
ProcCmdline: evolution --component=mail
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
Signal: 11
SourcePackage: evolution
StacktraceTop:
 ?? ()
 ?? () from /usr/lib/libdcerpc.so.0
 ?? () from /usr/lib/libdcerpc.so.0
 ?? () from /usr/lib/libdcerpc.so.0
 ?? () from /usr/lib/libdcerpc.so.0
Title: evolution crashed with SIGSEGV
Uname: Linux 2.6.28-11-generic i686
UserGroups: adm admin audio cdrom dialout dip floppy fuse lpadmin netdev plugdev powerdev sambashare scanner vboxusers video

Revision history for this message
Timothy Alexander (dragonfyre13) wrote :
Revision history for this message
Apport retracing service (apport) wrote : Symbolic stack trace

StacktraceTop:?? ()
free_mccache (ccc=0x94e0df0)
_talloc_free (ptr=0x94e0df0) at ../lib/talloc/talloc.c:515
_talloc_free (ptr=0xa38d3b0) at ../lib/talloc/talloc.c:546
_talloc_free (ptr=0x98d1590) at ../lib/talloc/talloc.c:546

Revision history for this message
Apport retracing service (apport) wrote : Symbolic threaded stack trace
Changed in evolution:
importance: Undecided → Medium
Revision history for this message
Soundmonster (leo-the-soundmonster) wrote :

I have the same problem, as described by Timothy. Started from the command line, Evolution produces the following output:
<code>
libexchangemapi-Message: exchange-mapi-connection.c:2880: exchange_mapi_create_profile: lock(connect_lock)
Unknown parameter encountered: "max log size"
Ignoring unknown parameter "max log size"
Unknown parameter encountered: "syslog"
Ignoring unknown parameter "syslog"
Unknown parameter encountered: "passdb backend"
Ignoring unknown parameter "passdb backend"
Unknown parameter encountered: "unix password sync"
Ignoring unknown parameter "unix password sync"
Unknown parameter encountered: "passwd program"
Ignoring unknown parameter "passwd program"
Unknown parameter encountered: "pam password change"
Ignoring unknown parameter "pam password change"
Unknown parameter encountered: "map to guest"
Ignoring unknown parameter "map to guest"
Unknown parameter encountered: "usershare allow guests"
Ignoring unknown parameter "usershare allow guests"
Unknown parameter encountered: "guest ok"
Ignoring unknown parameter "guest ok"
Unknown parameter encountered: "guest ok"
Ignoring unknown parameter "guest ok"
Logging into the server... succeeded
libexchangemapi-Message: exchange-mapi-connection.c:146: exchange_mapi_connection_close: lock(connect_lock)
Segmentation fault (core dumped)
</code>

So it seems that it succeeds with authentication but crashes immediately upon it. If you look at <tt>~/.evolution/mapi-profiles.ldb</tt>, you will see that there is a profile inside.

I have taken a look at the evolution-mapi source package. It seems to me that the <tt>SIGSEGV</tt> happens in <tt>src/libexchangemapi/exchange-mapi-connection.c:148</tt>

<code>
void
exchange_mapi_connection_close ()
{
  LOCK();
  global_mapi_session = NULL;
  MAPIUninitialize (); // <- here is where we get a SIGSEGV
  UNLOCK();
  /* TODO : Return status. get last error ? */
}
</code>

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thanks for the bug report. This particular bug has already been reported, but feel free to report any other bugs you find.

Changed in openchange (Ubuntu):
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.