Re: [Evolution-hackers] Exchange 5.5 - network reverse engineering underway (MAPI, Nspi)



On Tue, 2005-02-01 at 20:15 +0000, Luke Kenneth Casson Leighton wrote:
> > Well not MAPI itself, but
> > the CORBA wrapper for MAPI (www.omesc.com).
>  
>  ooooooo :)
> 
>  let's find OUT!
> 
>  what i am looking for is a similarity between the functions i'm
>  implementing and something in brutus...
> 
>  hmm.... NT_Service/servant_impl/IMsgStureS_impl.cpp looks hopeful...
> 
>  ah ha! this looks familiar:
> 
> 	SPropTagArray *tags = NULL;
> 	hr = msg_store_->GetProps(tags, flags, &count, &props);
> 
>  SPropTagArray is present in that Nspi IDL file i sent.
>  
>  hmmm... okay.... okay.
> 
>  brutus is basically a proxy server.

Well.. yes.


>  it therefore has a server front-end (in a documented format)
>  and a client back-end (fronting into MAPI).

Yes, a traditional CORBA framework:

 ------       -----------------    |    --------------       ------
| MAPI | <=> | BRUTUS servants | <=|=> | BRUTUS stubs | <=> | Evo? |
 ------       -----------------    |    --------------       ------
                                   
                                   ^
                                   |
                                Network


>  therefore, whilst it is useful to aid understanding of what is going
>  on, it is not entirely suitable for what i am looking for.
> 
>  if brutus also claimed to have alternative back-ends, implemented
>  at the MAPI interface layer, _then_ it would be suitable, because i
>  could take that code and place it behind the Nspi and the EMSMDB
>  interfaces , and run
>  Outlook 2000 - unmodified - and have it talk to a complete free
>  software exchange 5.5 compatible server.
>  that's my goal.

You can do that today with the various Outlook plug-ins out there which
implements a MAPI storage provider and interfaces back to
exchange4linux, Openexchange, OpenGroupware and possibly many other
groupware back-ends. Those plug-ins are not FOSS of-cause :-(

Brutus is aimed at applications that want to talk to Exchange (any
version from 5.5 onwards) on an equal footing with Outlook but,
practicality issues aside, you could put a different back-end behind
Brutus than an Exchange server, if you have the time and motivation to
build one.


>  i'm hoping to understand enough of this stuff at some point
>  in order to be able to have a hope of blatting a few pieces
>  from some of the plethora of projects around...

It does indeed seem that you already do understand quite a bit ;-)


Good luck, 
  jules






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]