Bug 602661

Summary: [abrt] crash in evolution-2.30.1-8.fc13: raise: Process /usr/bin/evolution was killed by signal 6 (SIGABRT)
Product: [Fedora] Fedora Reporter: Konstantin Ryabitsev <icon>
Component: openchangeAssignee: Matthew Barnes <mbarnes>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 13CC: angelfck2809, cfeller, jeff.raber, j.smyth, lucilanga, mbarnes, mcrha, parag.kamble, peter, southernhaks
Target Milestone: ---Keywords: EasyFix, Patch, Reopened, Triaged
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: abrt_hash:6f357f4f5516e9190bc78f415d0f70f70bdc9ad3
Fixed In Version: openchange-0.9-6.fc13 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 670119 (view as bug list) Environment:
Last Closed: 2011-01-13 23:37:15 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 670119    
Attachments:
Description Flags
File: backtrace
none
backtrace none

Description Konstantin Ryabitsev 2010-06-10 12:36:35 UTC
abrt 1.1.1 detected a crash.

architecture: x86_64
Attached file: backtrace
cmdline: evolution
comment: Trying to configure evolution-mapi -- crashes shortly after providing the login information and clicking "Authenticate."
component: evolution
crash_function: raise
executable: /usr/bin/evolution
global_uuid: 6f357f4f5516e9190bc78f415d0f70f70bdc9ad3
kernel: 2.6.33.5-112.fc13.x86_64
package: evolution-2.30.1-8.fc13
rating: 4
reason: Process /usr/bin/evolution was killed by signal 6 (SIGABRT)
release: Fedora release 13 (Goddard)

Comment 1 Konstantin Ryabitsev 2010-06-10 12:36:37 UTC
Created attachment 422889 [details]
File: backtrace

Comment 2 angelfck2809 2010-09-16 10:10:27 UTC
*** Bug 634359 has been marked as a duplicate of this bug. ***

Comment 3 angelfck2809 2010-09-16 10:11:41 UTC
is this being worked on ? Cannot configure an exchange server in evolution because of this.

Comment 4 angelfck2809 2010-09-16 10:14:19 UTC
Created attachment 447706 [details]
backtrace

abrt version: 1.1.13
architecture: x86_64
Attached file: backtrace
cmdline: evolution --debug=evo
component: evolution
crash_function: raise
executable: /usr/bin/evolution
kernel: 2.6.33.3-85.fc13.x86_64
package: evolution-2.30.3-1.fc13
rating: 4
reason: Process /usr/bin/evolution was killed by signal 6 (SIGABRT)
release: Fedora release 13 (Goddard)
time: 1284585665
uid: 500

comment
-----
see above . Also the debug output says:
(evolution:2914): e-data-server-DEBUG: Loading categories from
"/home/user.name/.evolution/categories.xml"
(evolution:2914): e-data-server-DEBUG: Loaded 31 categories
** (evolution:2914): DEBUG: Loading Exchange MAPI Plugin 

** (evolution:2914): DEBUG: MAPI listener is constructed with 0 listed MAPI
accounts 
e-data-server-ui-Message: Unable to find password(s) in keyring (Keyring
reports: No matching results)
e-data-server-ui-Message: Key file does not have group 'Passwords-ExchangeMAPI'
(evolution:2914): libexchangemapi-DEBUG: Create profile with user.name EU
exchange.fqdn.com

(evolution:2914): libexchangemapi-DEBUG: exchange-mapi-connection.c:3288:
exchange_mapi_create_profile: lock(connect_lock)
(evolution:2914): libexchangemapi-DEBUG: exchange-mapi-connection.c:87:
ensure_mapi_init_called: lock(connect_lock)
(evolution:2914): libexchangemapi-DEBUG: exchange-mapi-connection.c:123:
ensure_mapi_init_called: unlock(connect_lock)
(evolution:2914): libexchangemapi-DEBUG: Logging into the server... 
(evolution:2914): libexchangemapi-DEBUG: MapiLogonProvider : succeeded 

(evolution:2914): libexchangemapi-DEBUG: ProcessNetworkProfile : succeeded 

(evolution:2914): libexchangemapi-DEBUG: exchange-mapi-connection.c:205:
exchange_mapi_connection_close: lock(connect_lock)
(evolution:2914): libexchangemapi-DEBUG: exchange-mapi-connection.c:223:
exchange_mapi_connection_close: unlock(connect_lock)
(evolution:2914): libexchangemapi-DEBUG: exchange-mapi-connection.c:189:
exchange_mapi_connection_new: lock(connect_lock)
libexchangemapi-Message: exchange-mapi-folder.c:143:
exchange_mapi_peek_folder_list: lock(folder_lock)

How to reproduce
-----
1.opened evolution 
2.tried making an exchange account with exchange mapi
3.crashes on exchange authentication

Comment 5 Jeff Raber 2010-10-05 20:45:27 UTC
Reassigned to openchange as the crash is happening in libmapi.

The error only occurs when the credentials and server name supplied are valid, but the server entered is not the 'correct' MAPI server for that user.  This results in a call to FindGoodServer() which has a bug causing the 'double free' mentioned in the backtrace.  

My guess is that simply removing line 97 in IMAPISession.c should resolve this error by not freeing SRowSet until line 109.

(Disclaimer: I am not a programmer.)

--- IMAPISession.c	2009-12-21 06:13:28.000000000 -0600
+++ IMAPISession.c-new	2010-10-05 15:00:00.985162212 -0500
@@ -94,7 +94,6 @@
 	MAPIFreeBuffer(SPropTagArray);
 	MAPIFreeBuffer(MId_array);
 	MAPIFreeBuffer(server_dn);
-	MAPIFreeBuffer(SRowSet);
 	OPENCHANGE_RETVAL_IF(retval, retval, mem_ctx);
 
 	/* Step 5. Extract host from ncacn_ip_tcp binding string */

Comment 6 Jeff Raber 2010-10-05 21:16:02 UTC
*** Bug 592107 has been marked as a duplicate of this bug. ***

Comment 7 Jeff Raber 2010-10-05 21:16:22 UTC
*** Bug 602732 has been marked as a duplicate of this bug. ***

Comment 8 Jeff Raber 2010-10-05 21:16:48 UTC
*** Bug 603686 has been marked as a duplicate of this bug. ***

Comment 9 angelfck2809 2010-10-06 15:59:40 UTC
(In reply to comment #5)
> Reassigned to openchange as the crash is happening in libmapi.
> 
> The error only occurs when the credentials and server name supplied are valid,
> but the server entered is not the 'correct' MAPI server for that user.  This
> results in a call to FindGoodServer() which has a bug causing the 'double free'
> mentioned in the backtrace.  
> 
> My guess is that simply removing line 97 in IMAPISession.c should resolve this
> error by not freeing SRowSet until line 109.
> 
> (Disclaimer: I am not a programmer.)
> 
> --- IMAPISession.c 2009-12-21 06:13:28.000000000 -0600
> +++ IMAPISession.c-new 2010-10-05 15:00:00.985162212 -0500
> @@ -94,7 +94,6 @@
>   MAPIFreeBuffer(SPropTagArray);
>   MAPIFreeBuffer(MId_array);
>   MAPIFreeBuffer(server_dn);
> - MAPIFreeBuffer(SRowSet);
>   OPENCHANGE_RETVAL_IF(retval, retval, mem_ctx);
> 
>   /* Step 5. Extract host from ncacn_ip_tcp binding string */

Yes I can confirm this, thanks for the tip. If you have more than 1 exchange server then you need to enter the _exact_ server that the user is on. Only then will this not crash.

Cheers.

Comment 10 j.smyth 2010-10-22 14:19:23 UTC
Package: evolution-2.30.3-1.fc13
Architecture: x86_64
OS Release: Fedora release 13 (Goddard)


How to reproduce
-----
inital setup of evolution
trying to "authenticate" during the login to exchange 2007 server from evolution setup screen

Comment 11 southernhaks 2010-11-10 15:44:05 UTC
Package: evolution-2.30.3-1.fc13
Architecture: i686
OS Release: Fedora release 13 (Goddard)


How to reproduce
-----
1. Launch Evolution
2.
3.


Comment
-----
The crash is fairly random.  This version of either MAPI or Evolution continues to have the same bugs that have plagued my use for some time.  The application quits working, often.  The application continues to run, but must be recycled in order to pull email from the Exchange server.  If there is a way to capture debug info when the app is in such a state, I'd be more than happy to send that as well.

Also, there is still a bug (It's been there for years) where the email in the inbox suddenly disappears.  Sometimes, restarting the app works to resolve that.  Sometimes a refresh on the inbox works.  Most of the time, however, you must delete the .evolution directory.

Comment 12 Jeff Raber 2010-11-10 20:15:39 UTC
Looks like this bug was fixed upstream[1][2].

mbarnes, Can this one-line patch be applied and the package rebuilt?

Ref:
1:https://bugzilla.gnome.org/show_bug.cgi?id=605827
2:http://tracker.openchange.org/projects/openchange/repository/revisions/1705

Comment 13 Chad Feller 2010-11-10 22:02:07 UTC
(In reply to comment #11)
...
> Also, there is still a bug (It's been there for years) where the email in the
> inbox suddenly disappears.  Sometimes, restarting the app works to resolve
> that.  Sometimes a refresh on the inbox works.  Most of the time, however, you
> must delete the .evolution directory.

https://bugzilla.gnome.org/show_bug.cgi?id=608327

Comment 14 Jeff Raber 2010-12-02 06:56:00 UTC
If anyone would like to test to solution proposed in comment 5 ( and later confirmed in comment 12 ), the following scratch builds available.

F13 i386:https://koji.fedoraproject.org/koji/taskinfo?taskID=2638536
F13 x86_64:https://koji.fedoraproject.org/koji/taskinfo?taskID=2638535
F14 i386:https://koji.fedoraproject.org/koji/taskinfo?taskID=2638355
F14 x86_64:https://koji.fedoraproject.org/koji/taskinfo?taskID=2638354





-- 
Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers

Comment 15 Fedora Update System 2010-12-02 08:24:33 UTC
openchange-0.9-9.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/openchange-0.9-9.fc14

Comment 16 Milan Crha 2010-12-02 08:25:39 UTC
Thanks for all the investigation. I added the patch for Fedora 14 and Rawhide. I do not have commit rights to F13, unfortunately.

Comment 17 Fedora Update System 2010-12-02 19:10:57 UTC
openchange-0.9-9.fc14 has been pushed to the Fedora 14 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update openchange'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/openchange-0.9-9.fc14

Comment 18 Fedora Update System 2010-12-10 20:30:23 UTC
openchange-0.9-9.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 19 Jeff Raber 2010-12-10 23:36:17 UTC
Reopening this bug as the issue is not fixed for f13.

Milan;
  I see that you still do not have commit access for this package in f13.  Do you think this patch could be applied to Fedora 13 by a different maintainer, or maybe by a proven packager?

Comment 20 Milan Crha 2010-12-13 08:50:07 UTC
Yes, I believe it can be applied by anyone having sufficient rights to do so. Matt is away at the moment, so I didn't even try to contact him offline for sufficient right for me.

Comment 21 Milan Crha 2010-12-14 11:54:09 UTC
*** Bug 662906 has been marked as a duplicate of this bug. ***

Comment 22 Fedora Update System 2011-01-05 08:41:18 UTC
openchange-0.9-6.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/openchange-0.9-6.fc13

Comment 23 Fedora Update System 2011-01-05 21:24:01 UTC
openchange-0.9-6.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update openchange'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/openchange-0.9-6.fc13

Comment 24 Fedora Update System 2011-01-13 23:37:09 UTC
openchange-0.9-6.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.