Robert Shearman : rpcrt4: Implement RpcBindingCopy.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu May 25 04:16:03 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: b9f36c3fa208e2b3a99ed4c5859a423a6aef89c0
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=b9f36c3fa208e2b3a99ed4c5859a423a6aef89c0
Author: Robert Shearman <rob at codeweavers.com>
Date: Wed May 24 23:00:34 2006 +0100
rpcrt4: Implement RpcBindingCopy.
---
dlls/rpcrt4/rpc_binding.c | 31 +++++++++++++++++++++++++++++++
1 files changed, 31 insertions(+), 0 deletions(-)
diff --git a/dlls/rpcrt4/rpc_binding.c b/dlls/rpcrt4/rpc_binding.c
index b1cd88e..bb691f6 100644
--- a/dlls/rpcrt4/rpc_binding.c
+++ b/dlls/rpcrt4/rpc_binding.c
@@ -836,6 +836,37 @@ RPC_STATUS WINAPI I_RpcBindingSetAsync(
}
/***********************************************************************
+ * RpcBindingCopy (RPCRT4.@)
+ */
+RPC_STATUS RPC_ENTRY RpcBindingCopy(
+ RPC_BINDING_HANDLE SourceBinding,
+ RPC_BINDING_HANDLE* DestinationBinding)
+{
+ RpcBinding *DestBinding;
+ RpcBinding *SrcBinding = (RpcBinding*)SourceBinding;
+ RPC_STATUS status;
+
+ TRACE("(%p, %p)\n", SourceBinding, DestinationBinding);
+
+ status = RPCRT4_AllocBinding(&DestBinding, SrcBinding->server);
+ if (status != RPC_S_OK) return status;
+
+ DestBinding->ObjectUuid = SrcBinding->ObjectUuid;
+ DestBinding->BlockingFn = SrcBinding->BlockingFn;
+ DestBinding->Protseq = RPCRT4_strndupA(SrcBinding->Protseq, -1);
+ DestBinding->NetworkAddr = RPCRT4_strndupA(SrcBinding->NetworkAddr, -1);
+ DestBinding->Endpoint = RPCRT4_strndupA(SrcBinding->Endpoint, -1);
+
+ DestBinding->FromConn = SrcBinding->FromConn;
+ SrcBinding->FromConn = NULL;
+ if (SrcBinding->AuthInfo) RpcAuthInfo_AddRef(SrcBinding->AuthInfo);
+ DestBinding->AuthInfo = SrcBinding->AuthInfo;
+
+ *DestinationBinding = DestBinding;
+ return RPC_S_OK;
+}
+
+/***********************************************************************
* RpcImpersonateClient (RPCRT4.@)
*
* Impersonates the client connected via a binding handle so that security
More information about the wine-cvs
mailing list