ReactOS 0.4.16-dev-1946-g52006dd
ctx.h File Reference
#include "rpc.h"
#include "rpcndr.h"
Include dependency graph for ctx.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define __REQUIRED_RPCNDR_H_VERSION__   440
 
#define __hello_INTERFACE_DEFINED__
 

Typedefs

typedef long CTXTYPE
 
typedef CTXTYPE __RPC_FARPCTXTYPE
 

Functions

void __RPC_FAR *__RPC_USER MIDL_user_allocate (size_t)
 
void __RPC_USER MIDL_user_free (void __RPC_FAR *)
 
void CtxOpen (PCTXTYPE __RPC_FAR *pphContext, long Value)
 
void CtxHello (PCTXTYPE phContext)
 
void CtxClose (PCTXTYPE __RPC_FAR *pphContext)
 
void __RPC_USER PCTXTYPE_rundown (PCTXTYPE)
 

Variables

handle_t hBinding
 
RPC_IF_HANDLE hello_v1_0_c_ifspec
 
RPC_IF_HANDLE hello_v1_0_s_ifspec
 

Macro Definition Documentation

◆ __hello_INTERFACE_DEFINED__

#define __hello_INTERFACE_DEFINED__

Definition at line 41 of file ctx.h.

◆ __REQUIRED_RPCNDR_H_VERSION__

#define __REQUIRED_RPCNDR_H_VERSION__   440

Definition at line 22 of file ctx.h.

Typedef Documentation

◆ CTXTYPE

typedef long CTXTYPE

Definition at line 46 of file ctx.h.

◆ PCTXTYPE

Definition at line 48 of file ctx.h.

Function Documentation

◆ CtxClose()

void CtxClose ( PCTXTYPE __RPC_FAR pphContext)

Definition at line 179 of file ctx_c.c.

181{
182
183 RPC_BINDING_HANDLE _Handle = 0;
184
185 RPC_MESSAGE _RpcMessage;
186
187 MIDL_STUB_MESSAGE _StubMsg;
188
189 if(!pphContext)
190 {
192 }
194 {
196 ( PRPC_MESSAGE )&_RpcMessage,
197 ( PMIDL_STUB_MESSAGE )&_StubMsg,
199 2);
200
201
202 if(*pphContext != 0)
203 {
204 _Handle = NDRCContextBinding(( NDR_CCONTEXT )*pphContext);;
205
206 }
207
208 _StubMsg.BufferLength = 20U;
209 NdrGetBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg, _StubMsg.BufferLength, _Handle );
210
212 ( PMIDL_STUB_MESSAGE )&_StubMsg,
213 ( NDR_CCONTEXT )*pphContext,
214 0);
215 NdrSendReceive( (PMIDL_STUB_MESSAGE) &_StubMsg, (unsigned char __RPC_FAR *) _StubMsg.Buffer );
216
217 if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
219
221 ( PMIDL_STUB_MESSAGE )&_StubMsg,
222 ( NDR_CCONTEXT __RPC_FAR * )pphContext,
223 _Handle);
224
225 }
227 {
228 NdrFreeBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg );
229
230 }
232
233}
const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString
Definition: ctx_c.c:264
const MIDL_STUB_DESC hello_StubDesc
Definition: ctx_c.c:236
void WINAPI NdrClientContextMarshall(PMIDL_STUB_MESSAGE pStubMsg, NDR_CCONTEXT ContextHandle, int fCheck)
void WINAPI NdrClientContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg, NDR_CCONTEXT *pContextHandle, RPC_BINDING_HANDLE BindHandle)
void WINAPI NdrConvert(PMIDL_STUB_MESSAGE pStubMsg, PFORMAT_STRING pFormat)
void WINAPI NdrClientInitializeNew(PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE pStubMsg, PMIDL_STUB_DESC pStubDesc, unsigned int ProcNum)
void WINAPI NdrFreeBuffer(PMIDL_STUB_MESSAGE pStubMsg)
unsigned char *WINAPI NdrGetBuffer(PMIDL_STUB_MESSAGE stubmsg, ULONG buflen, RPC_BINDING_HANDLE handle)
unsigned char *WINAPI NdrSendReceive(PMIDL_STUB_MESSAGE stubmsg, unsigned char *buffer)
RPC_BINDING_HANDLE WINAPI NDRCContextBinding(NDR_CCONTEXT CContext)
#define NDR_LOCAL_DATA_REPRESENTATION
Definition: rpcndr.h:68
const unsigned char * PFORMAT_STRING
Definition: rpcndr.h:159
void DECLSPEC_NORETURN WINAPI RpcRaiseException(RPC_STATUS exception)
Definition: rpcrt4_main.c:213
#define RpcEndFinally
Definition: rpc.h:126
#define RpcTryFinally
Definition: rpc.h:124
#define __RPC_FAR
Definition: rpc.h:52
#define RpcFinally
Definition: rpc.h:125
unsigned char Format[PROC_FORMAT_STRING_SIZE]
Definition: client.c:20
unsigned char * Buffer
Definition: rpcndr.h:186
ULONG BufferLength
Definition: rpcndr.h:190
ULONG DataRepresentation
Definition: rpcdcep.h:39
#define RPC_X_NULL_REF_POINTER
Definition: winerror.h:1444

Referenced by hello_CtxClose().

◆ CtxHello()

void CtxHello ( PCTXTYPE  phContext)

Definition at line 130 of file ctx_c.c.

132{
133
134 RPC_BINDING_HANDLE _Handle = 0;
135
136 RPC_MESSAGE _RpcMessage;
137
138 MIDL_STUB_MESSAGE _StubMsg;
139
141 {
143 ( PRPC_MESSAGE )&_RpcMessage,
144 ( PMIDL_STUB_MESSAGE )&_StubMsg,
146 1);
147
148
149 if(phContext != 0)
150 {
151 _Handle = NDRCContextBinding(( NDR_CCONTEXT )phContext);;
152
153 }
154 else
155 {
157 }
158
159 _StubMsg.BufferLength = 20U;
160 NdrGetBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg, _StubMsg.BufferLength, _Handle );
161
163 ( PMIDL_STUB_MESSAGE )&_StubMsg,
164 ( NDR_CCONTEXT )phContext,
165 1);
166 NdrSendReceive( (PMIDL_STUB_MESSAGE) &_StubMsg, (unsigned char __RPC_FAR *) _StubMsg.Buffer );
167
168 }
170 {
171 NdrFreeBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg );
172
173 }
175
176}
#define RPC_X_SS_IN_NULL_CONTEXT
Definition: winerror.h:1440

Referenced by hello_CtxHello().

◆ CtxOpen()

void CtxOpen ( PCTXTYPE __RPC_FAR pphContext,
long  Value 
)

Definition at line 76 of file ctx_c.c.

79{
80
81 RPC_BINDING_HANDLE _Handle = 0;
82
83 RPC_MESSAGE _RpcMessage;
84
85 MIDL_STUB_MESSAGE _StubMsg;
86
87 if(!pphContext)
88 {
90 }
92 {
94 ( PRPC_MESSAGE )&_RpcMessage,
95 ( PMIDL_STUB_MESSAGE )&_StubMsg,
97 0);
98
99
100 _Handle = hBinding;
101
102
103 _StubMsg.BufferLength = 4U;
104 NdrGetBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg, _StubMsg.BufferLength, _Handle );
105
106 *(( long __RPC_FAR * )_StubMsg.Buffer)++ = Value;
107
108 NdrSendReceive( (PMIDL_STUB_MESSAGE) &_StubMsg, (unsigned char __RPC_FAR *) _StubMsg.Buffer );
109
110 if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
112
113 *pphContext = (void *)0;
115 ( PMIDL_STUB_MESSAGE )&_StubMsg,
116 ( NDR_CCONTEXT __RPC_FAR * )pphContext,
117 _Handle);
118
119 }
121 {
122 NdrFreeBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg );
123
124 }
126
127}
handle_t hBinding
Definition: ctx_c.c:54
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413

Referenced by hello_CtxOpen(), and main().

◆ MIDL_user_allocate()

void __RPC_FAR *__RPC_USER MIDL_user_allocate ( size_t  len)

Definition at line 25 of file dhcpcsvc.c.

26{
28}
#define GetProcessHeap()
Definition: compat.h:736
#define HeapAlloc
Definition: compat.h:733
#define HEAP_ZERO_MEMORY
Definition: compat.h:134
GLenum GLsizei len
Definition: glext.h:6722

◆ MIDL_user_free()

void __RPC_USER MIDL_user_free ( void __RPC_FAR ptr)

Definition at line 30 of file dhcpcsvc.c.

31{
33}
#define HeapFree(x, y, z)
Definition: compat.h:735
static PVOID ptr
Definition: dispmode.c:27

Referenced by DsAddressToSiteNamesExW(), DsAddressToSiteNamesW(), DsGetDcSiteCoverageW(), free_pyramid_doub_carr(), LsaEnumerateAccountRights(), LsaEnumerateAccounts(), LsaEnumerateAccountsWithUserRight(), LsaEnumeratePrivileges(), LsaEnumerateTrustedDomains(), LsaEnumerateTrustedDomainsEx(), LsaGetRemoteUserName(), LsaGetUserName(), LsaLookupNames(), LsaLookupNames2(), LsaLookupPrivilegeDisplayName(), LsaLookupPrivilegeName(), LsaLookupSids(), LsapAddAuthorityToDomainsList(), LsapAddDomainToDomainsList(), LsapLookupAccountRightName(), LsapLookupFullyQualifiedWellKnownNames(), LsapLookupIsolatedNames(), LsapLookupNames(), LsapLookupSids(), LsapSplitNames(), LsaQueryDomainInformationPolicy(), LsaQueryInformationPolicy(), LsaQueryInfoTrustedDomain(), LsarAddPrivilegesToAccount(), LsarEnumerateAccountRights(), LsarEnumeratePrivilegesAccount(), LsarLookupNames(), LsarLookupNames2(), LsarLookupSids(), LsarpEnumeratePrivileges(), LsarpLookupPrivilegeDisplayName(), LsarpLookupPrivilegeName(), LsarQueryAccountDomain(), LsarQueryAuditEvents(), LsarQueryAuditFull(), LsarQueryAuditLog(), LsarQueryDefaultQuota(), LsarQueryDnsDomain(), LsarQueryModification(), LsarQueryPrimaryDomain(), LsarQuerySecurityObject(), LsarQueryServerRole(), LsarRemovePrivilegesFromAccount(), LsarSetAuditFull(), LsaSetSecurityObject(), pointer_tests(), SamGetGroupsForUser(), SamGetMembersInGroup(), SamIFree_SAMPR_ALIAS_INFO_BUFFER(), SamIFree_SAMPR_DISPLAY_INFO_BUFFER(), SamIFree_SAMPR_DOMAIN_INFO_BUFFER(), SamIFree_SAMPR_ENUMERATION_BUFFER(), SamIFree_SAMPR_GET_GROUPS_BUFFER(), SamIFree_SAMPR_GET_MEMBERS_BUFFER(), SamIFree_SAMPR_GROUP_INFO_BUFFER(), SamIFree_SAMPR_PSID_ARRAY(), SamIFree_SAMPR_RETURNED_USTRING_ARRAY(), SamIFree_SAMPR_SR_SECURITY_DESCRIPTOR(), SamIFree_SAMPR_ULONG_ARRAY(), SamIFree_SAMPR_USER_INFO_BUFFER(), SamIFreeVoid(), SamrQuerySecurityObject(), SamSetSecurityObject(), and ScmGetServiceNameFromTag().

◆ PCTXTYPE_rundown()

void __RPC_USER PCTXTYPE_rundown ( PCTXTYPE  hContext)

Definition at line 62 of file server.c.

64{
65 PCTXTYPE pCtx = (PCTXTYPE)hContext;
66 printf("Context rundown: Value=%d \n", *pCtx);
67 midl_user_free(hContext);
68}
CTXTYPE __RPC_FAR * PCTXTYPE
Definition: ctx.h:48
#define printf
Definition: freeldr.h:97
#define midl_user_free
Definition: rpc.h:41

Referenced by hello_CtxClose(), and hello_CtxOpen().

Variable Documentation

◆ hBinding

handle_t hBinding
extern

Definition at line 54 of file ctx_c.c.

Referenced by ATSVC_HANDLE_bind(), ATSVC_HANDLE_unbind(), BROWSER_IDENTIFY_HANDLE_bind(), BROWSER_IDENTIFY_HANDLE_unbind(), client_free_handle(), CreateProcessWithLogonW(), CtxOpen(), DNSRSLVR_HANDLE_bind(), DNSRSLVR_HANDLE_unbind(), DsRoleGetPrimaryDomainInformation(), DsRolerGetPrimaryDomainInformation(), DsSetupBind(), DsSetupUnbind(), EVENTLOG_HANDLE_A_bind(), EVENTLOG_HANDLE_A_unbind(), EVENTLOG_HANDLE_W_bind(), EVENTLOG_HANDLE_W_unbind(), IsCallerInteractive(), LOGONSRV_HANDLE_bind(), LOGONSRV_HANDLE_unbind(), m_CtxOpen(), m_CtxOpen2(), main(), ndr_client_call(), ndr_update_context_handle(), NDRCContextUnmarshall(), NDRSContextMarshall2(), NDRSContextMarshallEx(), NDRSContextUnmarshall2(), NDRSContextUnmarshallEx(), NetpBind(), PDHCP_SERVER_NAME_bind(), PDHCP_SERVER_NAME_unbind(), PLSAPR_SERVER_NAME_bind(), PLSAPR_SERVER_NAME_unbind(), PNP_AddEmptyLogConf(), PNP_AddID(), PNP_Connect(), PNP_CreateDevInst(), PNP_CreateKey(), PNP_DeleteClassKey(), PNP_DeviceInstanceAction(), PNP_DisableDevInst(), PNP_Disconnect(), PNP_EnumerateSubKeys(), PNP_FreeLogConf(), PNP_GetClassCount(), PNP_GetClassInstance(), PNP_GetClassName(), PNP_GetClassRegProp(), PNP_GetCustomDevProp(), PNP_GetDepth(), PNP_GetDeviceList(), PNP_GetDeviceListSize(), PNP_GetDeviceRegProp(), PNP_GetDeviceStatus(), PNP_GetFirstLogConf(), PNP_GetGlobalState(), PNP_GetHwProfInfo(), PNP_GetInterfaceDeviceAlias(), PNP_GetInterfaceDeviceList(), PNP_GetInterfaceDeviceListSize(), PNP_GetNextLogConf(), PNP_GetNextResDes(), PNP_GetRelatedDeviceInstance(), PNP_GetRootDeviceInstance(), PNP_GetServerSideDeviceInstallFlags(), PNP_GetVersion(), PNP_GetVersionInternal(), PNP_HwProfFlags(), PNP_InitDetection(), PNP_IsDockStationPresent(), PNP_QueryRemove(), PNP_RegisterDeviceClassAssociation(), PNP_RegisterDriver(), PNP_RegisterNotification(), PNP_ReportLogOn(), PNP_RequestDeviceEject(), PNP_RequestEjectPC(), PNP_SetClassRegProp(), PNP_SetDeviceProblem(), PNP_SetDeviceRegProp(), PNP_UnregisterDeviceClassAssociation(), PNP_UnregisterNotification(), PNP_ValidateDeviceInstance(), PREGISTRY_SERVER_NAME_bind(), PREGISTRY_SERVER_NAME_unbind(), PSAMPR_SERVER_NAME_bind(), PSAMPR_SERVER_NAME_unbind(), SeclCreateProcessWithLogonW(), SRVSVC_HANDLE_bind(), SRVSVC_HANDLE_unbind(), SVCCTL_HANDLEA_bind(), SVCCTL_HANDLEA_unbind(), SVCCTL_HANDLEW_bind(), SVCCTL_HANDLEW_unbind(), WINSPOOL_HANDLE_bind(), WINSPOOL_HANDLE_unbind(), WKSSVC_IDENTIFY_HANDLE_bind(), WKSSVC_IDENTIFY_HANDLE_unbind(), WKSSVC_IMPERSONATE_HANDLE_bind(), WKSSVC_IMPERSONATE_HANDLE_unbind(), WLANSVC_HANDLE_bind(), and WLANSVC_HANDLE_unbind().

◆ hello_v1_0_c_ifspec

RPC_IF_HANDLE hello_v1_0_c_ifspec
extern

Definition at line 69 of file ctx_c.c.

◆ hello_v1_0_s_ifspec

RPC_IF_HANDLE hello_v1_0_s_ifspec
extern

Definition at line 61 of file ctx_s.c.

Referenced by main().