Bug 60120

Summary: mapi support for exchange 5.5 in kmail
Product: [Unmaintained] kmail Reporter: Adolf Winterer <adolf.j.winterer>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED DUPLICATE    
Severity: wishlist CC: colding, jtamate, olivier.lahaye, tuju
Priority: NOR Keywords: triaged
Version: 1.5.1   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Adolf Winterer 2003-06-20 14:24:02 UTC
Version:           1.5.1 (using KDE 3.1.1)
Installed from:    SuSE
Compiler:          gcc version 3.3 20030226 (prerelease) (SuSE Linux)
OS:          Linux (i686) release 2.4.20-4GB

Using KMail 1.5.1 there is no way to connect to MS Exchange 5.5 server using the MAPI protocol (please correct me if I'm wrong). 

As many Exchange servers are configured to allow MAPI connects only this prevents Linux users from using the mail function in the enterprise. Alternative protocols like POP3 and IMAP are often deactivated, either for security reasons (POP3) or "to keep the complexity down". Having the communication over the MAPI protocol would help Linux users to run the system permanently instead of rebooting with multi-boot systems over and over, which makes Linux in many enterprises quite unattractive.
Comment 1 Olivier LAHAYE 2004-05-12 15:09:08 UTC
Novel released the Ximian evolution Exchange 2000/2003 connector under GPL!

It is available at the following address (May 14 2004):
http://www.novell.com/products/connector/

This gives all needed materials to implement the exchange connectivity.

Such a feature would help many sysadmins to spread/deploy linux in big companies. Unfortunately, I have no C++ programming skills, but if I can help by testing...

Would be awesome feature :-)
Comment 2 Joseph Campbell 2004-11-18 17:23:43 UTC
The real problem for the Ximian connector is that it requires the Enterprise to run the OWA (Outlook Web Access) component of Exchange.  Without this (which my company is currently refusing to implement for "security" reasons) the connector doesn't work.  Not to mention that it requires you use evolution, which is ok for some... but if you have gotten used to Kmail and like the things that it does switching is a loathsome process.  This and ONLY this seems to be the MAJOR barrier to enterprises running other email clients.

Joe
Comment 3 Joel Brauer 2005-04-07 22:10:34 UTC
There are actually two Open source (GPL) libraries out there for using the MAPI protocol other than Ximian Connector.

Brutus - Corba library for MAPI access - http://www.omesc.com
and 
SourceXtreme Mapi toolkit - http://www.sourcextreme.com/projects/outlook/mapi/

If I knew more about Kontact I would probably work on implementing these, but I don't and don't have time right now.

hope this info helps someone
Comment 4 Jules Colding 2006-09-11 11:41:06 UTC
Hi,

SourceXtreme is not the answer to your prayers. The SourceXtreme toolkit is "merely" a helper API that wraps complicated parts of native MAPI into simple utility functions. This API is only for native win32 boxes.

Brutus, on the other hand, is a platform independent MAPI "proxy" that encupsulated all of extended MAPI into corresponding CORBA methods and types. You can devel a Brutus linux client application and expect it to behave just like a native MAPI win32 client application.

This makes Brutus very suitable for linux mail and calendar application like Evolution and KMail.

I've created a plugin for Evolution 2.[4,6,8] that makes Evolution connect to Exchange 5.5 and greater using Brutus. It is equally possible for the KMail developers to create a KMail plugin/extension that provides similar functionality.

I'm certainly willing to help in any effort to add Brutus (Exchange) functionality into other applications. Just ask and I'll do my best.

HTH,
  jules



Comment 5 Juha Tuomala 2006-09-11 13:07:32 UTC
Any pointers to your plugin?
Comment 6 yuval aviel 2006-09-11 13:16:17 UTC
take a look at his website: www.omesc.com
and http://www.omesc.com/modules/xoopsfaq/index.php?cat_id=3#q6
Comment 7 Jules Colding 2006-09-11 13:23:15 UTC
You can choose to get the source for the plugin alone or the combined plugin/server source:

Plugin source and RPMs: 
-----------------------
   http://www.omesc.com/content/downloads/dist


The combined source:
--------------------
   http://www.omesc.com/content/downloads/brutus-0.9.30.tar.bz2

Comment 8 Olivier LAHAYE 2006-09-11 13:48:40 UTC
So cool.... Can't wait for the kmail pluging :-)
Comment 9 Luke 2006-09-11 14:35:48 UTC
The Brutus MAPI<->CORBA bridge needs to be run on Windows, right?  Is this a problem?
Comment 10 Jules Colding 2006-09-11 14:39:47 UTC
Brutus Server is running on some win32 box, yes. 

It does not have to be any special kind of win32 box, nor should it be. The 
good thing about this setup is that you never need to touch the Exchange server
or anything else that your IT admin might have strong feeling about. 

Brutus is really the only way to get full MAPI support in a platform 
independent way.
Comment 11 Luke 2006-09-11 15:05:38 UTC
Just for the record, there is another way to get full MAPI support without needing a win32 component like the Brutus Server: use DCE-RPC rather than CORBA, because it's what exchange supports already.  Samba-TNG has basic DCE-RPC infrastructure in place, and the guys at http://openchange.org are working on the MAPI interface.  This is still a work in progress, much less mature than Brutus.
Comment 12 Jules Colding 2006-09-11 15:19:43 UTC
Yes... the joys of on-the-wire reverse engineering versus an API proxy. 
Comment 13 Craig 2006-11-03 16:14:46 UTC
Any news on a kmail plugin to support MAPI?
Comment 14 Jaime Torres 2008-09-27 13:29:12 UTC

*** This bug has been marked as a duplicate of bug 78629 ***
Comment 15 Olivier LAHAYE 2009-03-25 10:28:56 UTC
Bug 78629 is not a duplicate as is states about exchange WEB ACCESS while this bug states about MAPI support.
Web Access is not enabled on all companies exchange servers.

MAPI for Exchange 2007 is fully documented here:
http://msdn.microsoft.com/en-us/library/cc678348.aspx

If only I cound code C++ :-(