Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenrpc_assoc.h
Go to the documentation of this file.
00001 /* 00002 * Associations 00003 * 00004 * Copyright 2007 Robert Shearman (for CodeWeavers) 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00019 * 00020 */ 00021 00022 #include "rpc_binding.h" 00023 #include "wine/list.h" 00024 00025 typedef struct _RpcAssoc 00026 { 00027 struct list entry; /* entry in the global list of associations */ 00028 LONG refs; 00029 00030 LPSTR Protseq; 00031 LPSTR NetworkAddr; 00032 LPSTR Endpoint; 00033 LPWSTR NetworkOptions; 00034 00035 /* id of this association group */ 00036 ULONG assoc_group_id; 00037 UUID http_uuid; 00038 00039 CRITICAL_SECTION cs; 00040 00041 /* client-only */ 00042 /* connections available to be used (protected by cs) */ 00043 struct list free_connection_pool; 00044 00045 /* server-only */ 00046 struct list context_handle_list; /* protected by cs */ 00047 } RpcAssoc; 00048 00049 RPC_STATUS RPCRT4_GetAssociation(LPCSTR Protseq, LPCSTR NetworkAddr, LPCSTR Endpoint, LPCWSTR NetworkOptions, RpcAssoc **assoc) DECLSPEC_HIDDEN; 00050 RPC_STATUS RpcAssoc_GetClientConnection(RpcAssoc *assoc, const RPC_SYNTAX_IDENTIFIER *InterfaceId, const RPC_SYNTAX_IDENTIFIER *TransferSyntax, RpcAuthInfo *AuthInfo, RpcQualityOfService *QOS, RpcConnection **Connection) DECLSPEC_HIDDEN; 00051 void RpcAssoc_ReleaseIdleConnection(RpcAssoc *assoc, RpcConnection *Connection) DECLSPEC_HIDDEN; 00052 ULONG RpcAssoc_Release(RpcAssoc *assoc) DECLSPEC_HIDDEN; 00053 RPC_STATUS RpcServerAssoc_GetAssociation(LPCSTR Protseq, LPCSTR NetworkAddr, LPCSTR Endpoint, LPCWSTR NetworkOptions, ULONG assoc_gid, RpcAssoc **assoc_out) DECLSPEC_HIDDEN; 00054 RPC_STATUS RpcServerAssoc_AllocateContextHandle(RpcAssoc *assoc, void *CtxGuard, NDR_SCONTEXT *SContext) DECLSPEC_HIDDEN; 00055 RPC_STATUS RpcServerAssoc_FindContextHandle(RpcAssoc *assoc, const UUID *uuid, void *CtxGuard, ULONG Flags, NDR_SCONTEXT *SContext) DECLSPEC_HIDDEN; 00056 RPC_STATUS RpcServerAssoc_UpdateContextHandle(RpcAssoc *assoc, NDR_SCONTEXT SContext, void *CtxGuard, NDR_RUNDOWN rundown_routine) DECLSPEC_HIDDEN; 00057 unsigned int RpcServerAssoc_ReleaseContextHandle(RpcAssoc *assoc, NDR_SCONTEXT SContext, BOOL release_lock) DECLSPEC_HIDDEN; 00058 void RpcContextHandle_GetUuid(NDR_SCONTEXT SContext, UUID *uuid) DECLSPEC_HIDDEN; 00059 BOOL RpcContextHandle_IsGuardCorrect(NDR_SCONTEXT SContext, void *CtxGuard) DECLSPEC_HIDDEN; Generated on Sat May 26 2012 04:24:38 for ReactOS by
1.7.6.1
|