[ros-diffs] [tretiakov] 21458: Implement RpcSmDestroyClientContext and RpcSsDestroyClientContext

aleksey at studiocerebral.com aleksey at studiocerebral.com
Wed Apr 5 09:00:28 CEST 2006


Author: tretiakov
Date: Wed Apr  5 11:00:28 2006
New Revision: 21458

URL: http://svn.reactos.ru/svn/reactos?rev=21458&view=rev
Log:
Implement RpcSmDestroyClientContext and RpcSsDestroyClientContext

Modified:
    trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c
    trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec

Modified: trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c
URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c?rev=21458&r1=21457&r2=21458&view=diff
==============================================================================
--- trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c (original)
+++ trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c Wed Apr  5 11:00:28 2006
@@ -3351,6 +3351,9 @@
     return NULL;
 }
 
+/***********************************************************************
+ *           NDRCContextBinding
+ */
 RPC_BINDING_HANDLE WINAPI NDRCContextBinding(NDR_CCONTEXT CContext)
 {
     if(!CContext)
@@ -3358,3 +3361,35 @@
 
     return (RPC_BINDING_HANDLE)((CContextHandle*)CContext)->Binding;
 }
+
+/***********************************************************************
+ *           RpcSmDestroyClientContext
+ */
+RPC_STATUS WINAPI RpcSmDestroyClientContext(void** ContextHandle)
+{
+	CContextHandle *ctx = (CContextHandle*)ContextHandle;
+
+	if(!ctx)
+		return RPC_X_SS_CONTEXT_MISMATCH;
+
+	RPCRT4_DestroyBinding(ctx->Binding);
+	HeapFree(GetProcessHeap(), 0, ctx);
+	*ContextHandle = NULL;
+
+	return RPC_S_OK;
+}
+
+/***********************************************************************
+ *           RpcSsDestroyClientContext
+ */
+void WINAPI RpcSsDestroyClientContext(void** ContextHandle)
+{
+	RPC_STATUS status;
+
+	status = RpcSmDestroyClientContext(ContextHandle);
+
+	if(status != RPC_S_OK) 
+		RpcRaiseException(status);
+}
+
+

Modified: trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec
URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec?rev=21458&r1=21457&r2=21458&view=diff
==============================================================================
--- trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec (original)
+++ trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec Wed Apr  5 11:00:28 2006
@@ -494,7 +494,7 @@
 @ stub RpcServerYield
 @ stub RpcSmAllocate
 @ stub RpcSmClientFree
-@ stub RpcSmDestroyClientContext
+@ stdcall RpcSmDestroyClientContext (ptr)
 @ stub RpcSmDisableAllocate
 @ stub RpcSmEnableAllocate
 @ stub RpcSmFree
@@ -505,7 +505,7 @@
 @ stub RpcSsAllocate
 @ stub RpcSsContextLockExclusive # wxp
 @ stub RpcSsContextLockShared # wxp
-@ stub RpcSsDestroyClientContext
+@ stdcall RpcSsDestroyClientContext (ptr)
 @ stub RpcSsDisableAllocate
 @ stub RpcSsDontSerializeContext
 @ stub RpcSsEnableAllocate





More information about the Ros-diffs mailing list