Yes, the policy in EcDoAsyncConnectEx reply and EcDoAsyncWaitEx request are identical at the proxy-server connection level.
Murray From: Julien Kerihuel Sent: Wednesday, June 17, 2015 9:06 AM To: devel@lists.openchange.org Subject: Re: [openchange][devel] Proxying in AsyncEMSMDB On 17/06/15 05:05, Murray McCulligh wrote: 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. EcDoAsyncWaitEx (asyncemsmdb endpoint) and EcDoAsyncConnectEx (emsmdb) endpoint shares a global session context. This asynchronous session context is created in EcDoAsyncConnectEx, then it is used to bind on asyncemsmdb pipe through EcDoAsyncWaitEx function. I suspect the different client-proxy and proxy-server connections and their respective different session contexts to be the underlying reason why you hit this context mismatch. Hence, check the policy in EcDoAsyncConnectEx reply and EcDoAsyncWaitEx request and ensures they are the same at the proxy-server connection level. 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