31#define NDR_CONTEXT_HANDLE_MAGIC 0x4352444e
54 0, 0, { (
DWORD_PTR)(__FILE__
": ndr_context") }
81 TRACE(
"%p\n", CContext);
91 ERR(
"invalid handle %p\n", CContext);
101 TRACE(
"%p %p\n", CContext, pBuff);
126 TRACE(
"(%p)\n", ContextHandle);
130 *ContextHandle =
NULL;
208 void *pBuff,
ULONG DataRepresentation)
212 TRACE(
"*%p=(%p) %p %p %08x\n",
213 CContext, *CContext,
hBinding, pBuff, DataRepresentation);
229 TRACE(
"(%p %p %p)\n", SContext, pBuff, userRunDownIn);
242 TRACE(
"(%p %p %p %p)\n",
hBinding, SContext, pBuff, userRunDownIn);
260 TRACE(
"(%p %p %p %p %p %u)\n",
281 memset(ndr, 0,
sizeof(*ndr));
298 ULONG DataRepresentation)
300 TRACE(
"(%p %08x)\n", pBuff, DataRepresentation);
302 DataRepresentation,
NULL,
311 ULONG DataRepresentation)
313 TRACE(
"(%p %p %08x)\n",
hBinding, pBuff, DataRepresentation);
323 ULONG DataRepresentation,
331 TRACE(
"(%p %p %08x %p %u)\n",
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
#define HeapFree(x, y, z)
#define memcpy(s1, s2, n)
void WINAPI RpcSsDestroyClientContext(void **ContextHandle)
static CRITICAL_SECTION ndr_context_cs
void WINAPI NDRSContextMarshallEx(RPC_BINDING_HANDLE hBinding, NDR_SCONTEXT SContext, void *pBuff, NDR_RUNDOWN userRunDownIn)
RPC_STATUS WINAPI RpcSmDestroyClientContext(void **ContextHandle)
void WINAPI RpcSsDontSerializeContext(void)
RPC_BINDING_HANDLE WINAPI NDRCContextBinding(NDR_CCONTEXT CContext)
static CRITICAL_SECTION_DEBUG ndr_context_debug
NDR_SCONTEXT WINAPI NDRSContextUnmarshall2(RPC_BINDING_HANDLE hBinding, void *pBuff, ULONG DataRepresentation, void *CtxGuard, ULONG Flags)
void WINAPI NDRCContextUnmarshall(NDR_CCONTEXT *CContext, RPC_BINDING_HANDLE hBinding, void *pBuff, ULONG DataRepresentation)
struct ndr_context_handle ndr_context_handle
#define NDR_CONTEXT_HANDLE_MAGIC
static struct context_handle_entry * get_context_entry(NDR_CCONTEXT CContext)
NDR_SCONTEXT WINAPI NDRSContextUnmarshallEx(RPC_BINDING_HANDLE hBinding, void *pBuff, ULONG DataRepresentation)
NDR_SCONTEXT WINAPI NDRSContextUnmarshall(void *pBuff, ULONG DataRepresentation)
static RPC_STATUS ndr_update_context_handle(NDR_CCONTEXT *CContext, RPC_BINDING_HANDLE hBinding, const ndr_context_handle *chi)
void WINAPI NDRSContextMarshall2(RPC_BINDING_HANDLE hBinding, NDR_SCONTEXT SContext, void *pBuff, NDR_RUNDOWN userRunDownIn, void *CtxGuard, ULONG Flags)
void WINAPI NDRCContextMarshall(NDR_CCONTEXT CContext, void *pBuff)
static struct context_handle_entry * context_entry_from_guid(LPCGUID uuid)
void WINAPI NDRSContextMarshall(NDR_SCONTEXT SContext, void *pBuff, NDR_RUNDOWN userRunDownIn)
#define IsEqualGUID(rguid1, rguid2)
RPC_STATUS RpcServerAssoc_FindContextHandle(RpcAssoc *assoc, const UUID *uuid, void *CtxGuard, ULONG Flags, NDR_SCONTEXT *SContext)
void RpcContextHandle_GetUuid(NDR_SCONTEXT SContext, UUID *uuid)
RPC_STATUS RpcServerAssoc_UpdateContextHandle(RpcAssoc *assoc, NDR_SCONTEXT SContext, void *CtxGuard, NDR_RUNDOWN rundown_routine)
BOOL RpcContextHandle_IsGuardCorrect(NDR_SCONTEXT SContext, void *CtxGuard)
unsigned int RpcServerAssoc_ReleaseContextHandle(RpcAssoc *assoc, NDR_SCONTEXT SContext, BOOL release_lock)
RPC_STATUS RpcServerAssoc_AllocateContextHandle(RpcAssoc *assoc, void *CtxGuard, NDR_SCONTEXT *SContext)
RPC_STATUS WINAPI RpcBindingFree(RPC_BINDING_HANDLE *Binding)
RPC_STATUS RPC_ENTRY RpcBindingCopy(RPC_BINDING_HANDLE SourceBinding, RPC_BINDING_HANDLE *DestinationBinding)
void RPCRT4_RemoveThreadContextHandle(NDR_SCONTEXT SContext) DECLSPEC_HIDDEN
void RPCRT4_PushThreadContextHandle(NDR_SCONTEXT SContext) DECLSPEC_HIDDEN
RPC_BINDING_HANDLE WINAPI I_RpcGetCurrentCallHandle(void)
#define RPC_CONTEXT_HANDLE_DEFAULT_FLAGS
void(__RPC_USER * NDR_RUNDOWN)(void *context)
#define RPC_X_SS_CONTEXT_MISMATCH
int WINAPI UuidIsNil(UUID *Uuid, RPC_STATUS *Status)
void DECLSPEC_NORETURN WINAPI RpcRaiseException(RPC_STATUS exception)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
LIST_ENTRY ProcessLocksList
ndr_context_handle wire_data
RPC_BINDING_HANDLE handle
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
#define RPC_S_INVALID_BINDING
_Must_inspect_result_ _In_ ULONG Flags
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList