A bit of background.

I’ve added support for EcDoConnectEx/EcDoRpcExt2 and Kerberos constrained 
delegation in MAPIProxy when it is operating as a proxy.  This is working OK 
with Outlook 2010/2007 and an older version of Exchange (2003).  I’m now trying 
to add support for newer versions of Exchange.  I’m testing between Outlook 
2013 and Exchange 2010.

Outlook sends an ALTER_CONTEXT request on the existing EMSMDB pipe.  MAPIProxy 
seems to handle ALTER_CONTEXT by treating it as a new bind and thus the 
mapiproxy_op_connect function creates a new pipe to Exchange.  This all seems 
to be fine, the Kerberos authentication on the pipe is OK, and 
dcerpc_pipe_connect returns success.

When the EcDoAsyncWaitEx RPC call is received, I see the following...  

mapiproxy/dcesrv_mapiproxy.c:615(mapiproxy_op_dispatch): 
mapiproxy::mapiproxy_op_dispatch: [tv=1434509167.109593] [#491 start]
mapiproxy/dcesrv_mapiproxy.c:633(mapiproxy_op_dispatch): 
mapiproxy::mapiproxy_op_dispatch: EcDoAsyncWaitEx(0x0): 32 bytes
     EcDoAsyncWaitEx_Ex: struct EcDoAsyncWaitEx
        in: struct EcDoAsyncWaitEx
            async_handle             : *
                async_handle: struct policy_handle
                    handle_type              : 0x00000000 (0)
                    uuid                     : 
a2741b2e-1790-4ae9-918a-217abed84d9d
            ulFlagsIn                : 0x00000000 (0)
rpc fault: DCERPC_NCA_S_FAULT_CONTEXT_MISMATCH

It looks like it has sent the RPC call to Exchange and gets back this error.  
I’m not sure where to go from here.  

Murray

From: Julien Kerihuel 
Sent: Monday, June 15, 2015 5:54 AM
To: devel@lists.openchange.org 
Subject: Re: [openchange][devel] Proxying in AsyncEMSMDB

On 11/06/15 07:04, Murray McCulligh wrote:

  I’ve run into an issue that I need some advice on how to tackle.

  Outlook does not open a new pipe and BIND request for AsyncEMSMDB, rather it 
takes the existing pipe used for EMSMDB and issues an ALTER_CONTEXT request.  
Currently in mapiproxy a new pipe is then opened to exchange and a BIND request 
for AyncEMSMDB endpoint is issued.  Is this the correct way to proxy 
AsyncEMSMDB or should mapiproxy be trying to alter its existing pipe to 
Exchange?  I’ve tried both approaches and neither worked during my initial 
attempts but before digging in further I wanted to see which approach is the 
correct one to take.

This is an interesting question, more insights of what is not working would 
help to narrow down the issue you're facing.
Hence, what exactly is not working? What is the behavior you observe?

Br,
Julien.

-- 
Julien Kerihuel
j.kerih...@openchange.org
OpenChange Project Founder

Twitter: http://twitter.com/jkerihuel

GPG Fingerprint: 0B55 783D A781 6329 108A  B609 7EF6 FE11 A35F 1F79

--------------------------------------------------------------------------------
_______________________________________________
devel mailing list
devel@lists.openchange.org
http://mailman.openchange.org/listinfo/devel
_______________________________________________
devel mailing list
devel@lists.openchange.org
http://mailman.openchange.org/listinfo/devel

Reply via email to