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