blob: 6ff66c7f922e7834e02b7177aa3dcb7619eb7723 [file] [log] [blame]
Kai Tietz9d937a72007-08-10 10:41:48 +00001/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
Kai Tietzf29f1a32010-01-15 21:15:53 +00004 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
Kai Tietz9d937a72007-08-10 10:41:48 +00005 */
6#ifndef __RPCNDR_H_VERSION__
7#define __RPCNDR_H_VERSION__ (475)
8#endif
9
10#ifndef __RPCNDR_H__
11#define __RPCNDR_H__
12
13#ifdef __REQUIRED_RPCNDR_H_VERSION__
14#if (475 < __REQUIRED_RPCNDR_H_VERSION__)
15#error incorrect <rpcndr.h> version. Use the header that matches with the MIDL compiler.
16#endif
17#endif
18
19#include <pshpack8.h>
20#include <basetsd.h>
21#include <rpcnsip.h>
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27#define NDR_CHAR_REP_MASK (unsigned long)0X0000000FL
28#define NDR_INT_REP_MASK (unsigned long)0X000000F0L
29#define NDR_FLOAT_REP_MASK (unsigned long)0X0000FF00L
30
31#define NDR_LITTLE_ENDIAN (unsigned long)0X00000010L
32#define NDR_BIG_ENDIAN (unsigned long)0X00000000L
33
34#define NDR_IEEE_FLOAT (unsigned long)0X00000000L
35#define NDR_VAX_FLOAT (unsigned long)0X00000100L
36#define NDR_IBM_FLOAT (unsigned long)0X00000300L
37
38#define NDR_ASCII_CHAR (unsigned long)0X00000000L
39#define NDR_EBCDIC_CHAR (unsigned long)0X00000001L
40
41#define NDR_LOCAL_DATA_REPRESENTATION (unsigned long)0X00000010L
42#define NDR_LOCAL_ENDIAN NDR_LITTLE_ENDIAN
43
44#define TARGET_IS_NT51_OR_LATER 1
45#define TARGET_IS_NT50_OR_LATER 1
46#define TARGET_IS_NT40_OR_LATER 1
47#define TARGET_IS_NT351_OR_WIN95_OR_LATER 1
48
49#define small char
50 typedef unsigned char byte;
51 typedef byte cs_byte;
52 typedef unsigned char boolean;
53
54#ifndef _HYPER_DEFINED
55#define _HYPER_DEFINED
Kai Tietz12cda482009-09-06 12:02:08 +000056#define hyper /* __MINGW_EXTENSION */ __int64
57#define MIDL_uhyper /* __MINGW_EXTENSION */ unsigned __int64
Kai Tietz9d937a72007-08-10 10:41:48 +000058#endif
59
60#ifndef _WCHAR_T_DEFINED
61#define _WCHAR_T_DEFINED
62 typedef unsigned short wchar_t;
63#endif
64
65#ifndef _SIZE_T_DEFINED
66#define _SIZE_T_DEFINED
Kai Tietz9c7feae2008-03-27 15:28:02 +000067#undef size_t
Kai Tietz9d937a72007-08-10 10:41:48 +000068#ifdef _WIN64
Kai Tietz12cda482009-09-06 12:02:08 +000069 __MINGW_EXTENSION typedef unsigned __int64 size_t;
Kai Tietz69bc9542008-01-17 19:17:53 +000070#else
Kai Tietz9c7feae2008-03-27 15:28:02 +000071 typedef unsigned int size_t;
Kai Tietz9d937a72007-08-10 10:41:48 +000072#endif
73#endif
74
75#ifndef _SSIZE_T_DEFINED
76#define _SSIZE_T_DEFINED
Kai Tietz9c7feae2008-03-27 15:28:02 +000077#undef ssize_t
Kai Tietz9d937a72007-08-10 10:41:48 +000078#ifdef _WIN64
Kai Tietz12cda482009-09-06 12:02:08 +000079 __MINGW_EXTENSION typedef __int64 ssize_t;
Kai Tietz69bc9542008-01-17 19:17:53 +000080#else
Kai Tietz9c7feae2008-03-27 15:28:02 +000081 typedef int ssize_t;
Kai Tietz9d937a72007-08-10 10:41:48 +000082#endif
83#endif
84
85#ifdef __RPC_WIN32__
86#define __RPC_CALLEE __stdcall
87#endif
88
89#ifndef __MIDL_USER_DEFINED
90#define __MIDL_USER_DEFINED
91#define midl_user_allocate MIDL_user_allocate
92#define midl_user_free MIDL_user_free
93#endif
94
Kai Tietz5e86d892009-08-18 14:29:55 +000095#ifndef __MIDL_user_allocate_free_DEFINED__
96#define __MIDL_user_allocate_free_DEFINED__
Kai Tietz9d937a72007-08-10 10:41:48 +000097 void *__RPC_API MIDL_user_allocate(size_t);
98 void __RPC_API MIDL_user_free(void *);
Kai Tietz5e86d892009-08-18 14:29:55 +000099#endif
Kai Tietz9d937a72007-08-10 10:41:48 +0000100
101#define RPC_VAR_ENTRY __cdecl
102
103#if (defined(_X86_) && !defined(__x86_64)) || defined(__x86_64) || defined(__ia64__)
104#define __MIDL_DECLSPEC_DLLIMPORT __declspec(dllimport)
105#define __MIDL_DECLSPEC_DLLEXPORT __declspec(dllexport)
106#else
107#define __MIDL_DECLSPEC_DLLIMPORT
108#define __MIDL_DECLSPEC_DLLEXPORT
109#endif
110
111 typedef void *NDR_CCONTEXT;
112
Kai Tietz94b88da2009-11-27 16:41:32 +0000113 typedef struct _NDR_SCONTEXT {
Kai Tietz9d937a72007-08-10 10:41:48 +0000114 void *pad[2];
115 void *userContext;
116 } *NDR_SCONTEXT;
117
118#define NDRSContextValue(hContext) (&(hContext)->userContext)
119
120#define cbNDRContext 20
121
122 typedef void (__RPC_API *NDR_RUNDOWN)(void *context);
123 typedef void (__RPC_API *NDR_NOTIFY_ROUTINE)(void);
124 typedef void (__RPC_API *NDR_NOTIFY2_ROUTINE)(boolean flag);
125
126 typedef struct _SCONTEXT_QUEUE {
127 unsigned long NumberOfObjects;
128 NDR_SCONTEXT *ArrayOfObjects;
129 } SCONTEXT_QUEUE,*PSCONTEXT_QUEUE;
130
131 RPCRTAPI RPC_BINDING_HANDLE RPC_ENTRY NDRCContextBinding(NDR_CCONTEXT CContext);
132 RPCRTAPI void RPC_ENTRY NDRCContextMarshall(NDR_CCONTEXT CContext,void *pBuff);
133 RPCRTAPI void RPC_ENTRY NDRCContextUnmarshall(NDR_CCONTEXT *pCContext,RPC_BINDING_HANDLE hBinding,void *pBuff,unsigned long DataRepresentation);
134 RPCRTAPI void RPC_ENTRY NDRSContextMarshall(NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn);
135 RPCRTAPI NDR_SCONTEXT RPC_ENTRY NDRSContextUnmarshall(void *pBuff,unsigned long DataRepresentation);
136 RPCRTAPI void RPC_ENTRY NDRSContextMarshallEx(RPC_BINDING_HANDLE BindingHandle,NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn);
137 RPCRTAPI void RPC_ENTRY NDRSContextMarshall2(RPC_BINDING_HANDLE BindingHandle,NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn,void *CtxGuard,unsigned long Flags);
138 RPCRTAPI NDR_SCONTEXT RPC_ENTRY NDRSContextUnmarshallEx(RPC_BINDING_HANDLE BindingHandle,void *pBuff,unsigned long DataRepresentation);
139 RPCRTAPI NDR_SCONTEXT RPC_ENTRY NDRSContextUnmarshall2(RPC_BINDING_HANDLE BindingHandle,void *pBuff,unsigned long DataRepresentation,void *CtxGuard,unsigned long Flags);
140 RPCRTAPI void RPC_ENTRY RpcSsDestroyClientContext(void **ContextHandle);
141
142#define byte_from_ndr(source,target) { *(target) = *(*(char **)&(source)->Buffer)++; }
143#define byte_array_from_ndr(Source,LowerIndex,UpperIndex,Target) { NDRcopy ((((char *)(Target))+(LowerIndex)),(Source)->Buffer,(unsigned int)((UpperIndex)-(LowerIndex))); *(unsigned long *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); }
144#define boolean_from_ndr(source,target) { *(target) = *(*(char **)&(source)->Buffer)++; }
145#define boolean_array_from_ndr(Source,LowerIndex,UpperIndex,Target) { NDRcopy ((((char *)(Target))+(LowerIndex)),(Source)->Buffer,(unsigned int)((UpperIndex)-(LowerIndex))); *(unsigned long *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); }
146#define small_from_ndr(source,target) { *(target) = *(*(char **)&(source)->Buffer)++; }
147#define small_from_ndr_temp(source,target,format) { *(target) = *(*(char **)(source))++; }
148#define small_array_from_ndr(Source,LowerIndex,UpperIndex,Target) { NDRcopy ((((char *)(Target))+(LowerIndex)),(Source)->Buffer,(unsigned int)((UpperIndex)-(LowerIndex))); *(unsigned long *)&(Source)->Buffer += ((UpperIndex)-(LowerIndex)); }
149
150#define MIDL_ascii_strlen(string) strlen(string)
151#define MIDL_ascii_strcpy(target,source) strcpy(target,source)
152#define MIDL_memset(s,c,n) memset(s,c,n)
153
154#ifndef _ERROR_STATUS_T_DEFINED
155#define _ERROR_STATUS_T_DEFINED
156typedef unsigned long error_status_t;
157#endif
158
159#define _midl_ma1(p,cast) *(*(cast **)&p)++
160#define _midl_ma2(p,cast) *(*(cast **)&p)++
161#define _midl_ma4(p,cast) *(*(cast **)&p)++
162#define _midl_ma8(p,cast) *(*(cast **)&p)++
163
164#define _midl_unma1(p,cast) *((cast *)p)++
165#define _midl_unma2(p,cast) *((cast *)p)++
166#define _midl_unma3(p,cast) *((cast *)p)++
167#define _midl_unma4(p,cast) *((cast *)p)++
168
169#define _midl_fa2(p) (p = (RPC_BUFPTR)((ULONG_PTR)(p+1) & ~0x1))
170#define _midl_fa4(p) (p = (RPC_BUFPTR)((ULONG_PTR)(p+3) & ~0x3))
171#define _midl_fa8(p) (p = (RPC_BUFPTR)((ULONG_PTR)(p+7) & ~0x7))
172
173#define _midl_addp(p,n) (p += n)
174#define _midl_marsh_lhs(p,cast) *(*(cast **)&p)++
175#define _midl_marsh_up(mp,p) *(*(unsigned long **)&mp)++ = (unsigned long)p
176#define _midl_advmp(mp) *(*(unsigned long **)&mp)++
177#define _midl_unmarsh_up(p) (*(*(unsigned long **)&p)++)
178
179#define NdrMarshConfStringHdr(p,s,l) (_midl_ma4(p,unsigned long) = s,_midl_ma4(p,unsigned long) = 0,_midl_ma4(p,unsigned long) = l)
Jonathan Yong58beaa72010-07-20 13:57:58 +0000180#define NdrUnMarshConfStringHdr(p,s,l) (s=_midl_unma4(p,unsigned long),(_midl_addp(p,4)),(l=_midl_unma4(p,unsigned long)))
Kai Tietz9d937a72007-08-10 10:41:48 +0000181#define NdrMarshCCtxtHdl(pc,p) (NDRCContextMarshall((NDR_CCONTEXT)pc,p),p+20)
Jonathan Yong58beaa72010-07-20 13:57:58 +0000182#define NdrUnMarshCCtxtHdl(pc,p,h,drep) (NDRCContextUnmarshall((NDR_CCONTEXT)pc,h,p,drep),p+20)
Kai Tietz9d937a72007-08-10 10:41:48 +0000183#define NdrUnMarshSCtxtHdl(pc,p,drep) (pc = NdrSContextUnMarshall(p,drep))
Jonathan Yong58beaa72010-07-20 13:57:58 +0000184#define NdrMarshSCtxtHdl(pc,p,rd) (NdrSContextMarshall((NDR_SCONTEXT)pc,p,(NDR_RUNDOWN)rd))
Kai Tietz9d937a72007-08-10 10:41:48 +0000185
186#define NdrFieldOffset(s,f) (LONG_PTR)(& (((s *)0)->f))
187#define NdrFieldPad(s,f,p,t) ((unsigned long)(NdrFieldOffset(s,f) - NdrFieldOffset(s,p)) - sizeof(t))
188
189#define NdrFcShort(s) (unsigned char)(s & 0xff),(unsigned char)(s >> 8)
190#define NdrFcLong(s) (unsigned char)(s & 0xff),(unsigned char)((s & 0x0000ff00) >> 8),(unsigned char)((s & 0x00ff0000) >> 16),(unsigned char)(s >> 24)
191
192#define RPC_BAD_STUB_DATA_EXCEPTION_FILTER ((RpcExceptionCode()==STATUS_ACCESS_VIOLATION) || (RpcExceptionCode()==STATUS_DATATYPE_MISALIGNMENT) || (RpcExceptionCode()==RPC_X_BAD_STUB_DATA) || (RpcExceptionCode()==RPC_S_INVALID_BOUND))
193
194 struct _MIDL_STUB_MESSAGE;
195 struct _MIDL_STUB_DESC;
196 struct _FULL_PTR_XLAT_TABLES;
197
198 typedef unsigned char *RPC_BUFPTR;
199 typedef unsigned long RPC_LENGTH;
200 typedef void (__RPC_API *EXPR_EVAL)(struct _MIDL_STUB_MESSAGE *);
201 typedef const unsigned char *PFORMAT_STRING;
202
203 typedef struct {
204 long Dimension;
205 unsigned long *BufferConformanceMark;
206 unsigned long *BufferVarianceMark;
207 unsigned long *MaxCountArray;
208 unsigned long *OffsetArray;
209 unsigned long *ActualCountArray;
210 } ARRAY_INFO,*PARRAY_INFO;
211
212 typedef struct _NDR_ASYNC_MESSAGE *PNDR_ASYNC_MESSAGE;
213 typedef struct _NDR_CORRELATION_INFO *PNDR_CORRELATION_INFO;
214
215 typedef struct {
216 unsigned long WireCodeset;
217 unsigned long DesiredReceivingCodeset;
218 void *CSArrayInfo;
219 } CS_STUB_INFO;
220
221 struct _MIDL_SYNTAX_INFO;
222 typedef struct _MIDL_SYNTAX_INFO MIDL_SYNTAX_INFO,*PMIDL_SYNTAX_INFO;
223
224 struct NDR_ALLOC_ALL_NODES_CONTEXT;
225 struct NDR_POINTER_QUEUE_STATE;
226 struct _NDR_PROC_CONTEXT;
227
228 typedef struct _MIDL_STUB_MESSAGE {
229 PRPC_MESSAGE RpcMsg;
230 unsigned char *Buffer;
231 unsigned char *BufferStart;
232 unsigned char *BufferEnd;
233 unsigned char *BufferMark;
234 unsigned long BufferLength;
235 unsigned long MemorySize;
236 unsigned char *Memory;
237 unsigned char IsClient;
238 unsigned char Pad;
239 unsigned short uFlags2;
240 int ReuseBuffer;
241 struct NDR_ALLOC_ALL_NODES_CONTEXT *pAllocAllNodesContext;
242 struct NDR_POINTER_QUEUE_STATE *pPointerQueueState;
243 int IgnoreEmbeddedPointers;
244 unsigned char *PointerBufferMark;
245 unsigned char fBufferValid;
246 unsigned char uFlags;
247 unsigned short UniquePtrCount;
248 ULONG_PTR MaxCount;
249 unsigned long Offset;
250 unsigned long ActualCount;
251 void *(__RPC_API *pfnAllocate)(size_t);
252 void (__RPC_API *pfnFree)(void *);
253 unsigned char *StackTop;
254 unsigned char *pPresentedType;
255 unsigned char *pTransmitType;
256 handle_t SavedHandle;
257 const struct _MIDL_STUB_DESC *StubDesc;
258 struct _FULL_PTR_XLAT_TABLES *FullPtrXlatTables;
259 unsigned long FullPtrRefId;
260 unsigned long PointerLength;
Kai Tietz94b88da2009-11-27 16:41:32 +0000261 int fInDontFree : 1;
262 int fDontCallFreeInst : 1;
263 int fInOnlyParam : 1;
264 int fHasReturn : 1;
265 int fHasExtensions : 1;
266 int fHasNewCorrDesc : 1;
267 int fIsOicfServer : 1;
268 int fHasMemoryValidateCallback : 1;
269 int fUnused : 8;
270 int fUnused2 : 16;
Kai Tietz9d937a72007-08-10 10:41:48 +0000271 unsigned long dwDestContext;
272 void *pvDestContext;
273 NDR_SCONTEXT *SavedContextHandles;
274 long ParamNumber;
275 struct IRpcChannelBuffer *pRpcChannelBuffer;
276 PARRAY_INFO pArrayInfo;
277 unsigned long *SizePtrCountArray;
278 unsigned long *SizePtrOffsetArray;
279 unsigned long *SizePtrLengthArray;
280 void *pArgQueue;
281 unsigned long dwStubPhase;
282 void *LowStackMark;
283 PNDR_ASYNC_MESSAGE pAsyncMsg;
284 PNDR_CORRELATION_INFO pCorrInfo;
285 unsigned char *pCorrMemory;
286 void *pMemoryList;
287 CS_STUB_INFO *pCSInfo;
288 unsigned char *ConformanceMark;
289 unsigned char *VarianceMark;
290#if defined(IA64)
291 void *BackingStoreLowMark;
292#else
293 INT_PTR Unused;
294#endif
295 struct _NDR_PROC_CONTEXT *pContext;
296 void *pUserMarshalList;
297 INT_PTR Reserved51_2;
298 INT_PTR Reserved51_3;
299 INT_PTR Reserved51_4;
300 INT_PTR Reserved51_5;
301 } MIDL_STUB_MESSAGE,*PMIDL_STUB_MESSAGE;
302
303 typedef void *(__RPC_API *GENERIC_BINDING_ROUTINE)(void *);
304 typedef void (__RPC_API *GENERIC_UNBIND_ROUTINE)(void *,unsigned char *);
305
306 typedef struct _GENERIC_BINDING_ROUTINE_PAIR {
307 GENERIC_BINDING_ROUTINE pfnBind;
308 GENERIC_UNBIND_ROUTINE pfnUnbind;
309 } GENERIC_BINDING_ROUTINE_PAIR,*PGENERIC_BINDING_ROUTINE_PAIR;
310
311 typedef struct __GENERIC_BINDING_INFO {
312 void *pObj;
313 unsigned int Size;
314 GENERIC_BINDING_ROUTINE pfnBind;
315 GENERIC_UNBIND_ROUTINE pfnUnbind;
316 } GENERIC_BINDING_INFO,*PGENERIC_BINDING_INFO;
317
318#define NDR_SHAREABLE __inline
319
320 typedef void (__RPC_API *XMIT_HELPER_ROUTINE)(PMIDL_STUB_MESSAGE);
321
322 typedef struct _XMIT_ROUTINE_QUINTUPLE {
323 XMIT_HELPER_ROUTINE pfnTranslateToXmit;
324 XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
325 XMIT_HELPER_ROUTINE pfnFreeXmit;
326 XMIT_HELPER_ROUTINE pfnFreeInst;
327 } XMIT_ROUTINE_QUINTUPLE,*PXMIT_ROUTINE_QUINTUPLE;
328
329 typedef unsigned long (__RPC_API *USER_MARSHAL_SIZING_ROUTINE)(unsigned long *,unsigned long,void *);
330 typedef unsigned char *(__RPC_API *USER_MARSHAL_MARSHALLING_ROUTINE)(unsigned long *,unsigned char *,void *);
331 typedef unsigned char *(__RPC_API *USER_MARSHAL_UNMARSHALLING_ROUTINE)(unsigned long *,unsigned char *,void *);
332 typedef void (__RPC_API *USER_MARSHAL_FREEING_ROUTINE)(unsigned long *,void *);
333
334 typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE {
335 USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
336 USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
337 USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
338 USER_MARSHAL_FREEING_ROUTINE pfnFree;
339 } USER_MARSHAL_ROUTINE_QUADRUPLE;
340
341#define USER_MARSHAL_CB_SIGNATURE 'USRC'
342
343 typedef enum _USER_MARSHAL_CB_TYPE {
344 USER_MARSHAL_CB_BUFFER_SIZE,USER_MARSHAL_CB_MARSHALL,USER_MARSHAL_CB_UNMARSHALL,USER_MARSHAL_CB_FREE
345 } USER_MARSHAL_CB_TYPE;
346
347 typedef struct _USER_MARSHAL_CB {
348 unsigned long Flags;
349 PMIDL_STUB_MESSAGE pStubMsg;
350 PFORMAT_STRING pReserve;
351 unsigned long Signature;
352 USER_MARSHAL_CB_TYPE CBType;
353 PFORMAT_STRING pFormat;
354 PFORMAT_STRING pTypeFormat;
355 } USER_MARSHAL_CB;
356
357#define USER_CALL_CTXT_MASK(f) ((f) & 0x00ff)
358#define USER_CALL_AUX_MASK(f) ((f) & 0xff00)
359#define GET_USER_DATA_REP(f) ((f) >> 16)
360
361#define USER_CALL_IS_ASYNC 0x0100
362#define USER_CALL_NEW_CORRELATION_DESC 0x0200
363
364 typedef struct _MALLOC_FREE_STRUCT {
365 void *(__RPC_API *pfnAllocate)(size_t);
366 void (__RPC_API *pfnFree)(void *);
367 } MALLOC_FREE_STRUCT;
368
369 typedef struct _COMM_FAULT_OFFSETS {
370 short CommOffset;
371 short FaultOffset;
372 } COMM_FAULT_OFFSETS;
373
374 typedef enum _IDL_CS_CONVERT {
375 IDL_CS_NO_CONVERT,IDL_CS_IN_PLACE_CONVERT,IDL_CS_NEW_BUFFER_CONVERT
376 } IDL_CS_CONVERT;
377
378 typedef void (__RPC_API *CS_TYPE_NET_SIZE_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,unsigned long ulLocalBufferSize,IDL_CS_CONVERT *conversionType,unsigned long *pulNetworkBufferSize,error_status_t *pStatus);
379 typedef void (__RPC_API *CS_TYPE_LOCAL_SIZE_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,unsigned long ulNetworkBufferSize,IDL_CS_CONVERT *conversionType,unsigned long *pulLocalBufferSize,error_status_t *pStatus);
380 typedef void (__RPC_API *CS_TYPE_TO_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,void *pLocalData,unsigned long ulLocalDataLength,byte *pNetworkData,unsigned long *pulNetworkDataLength,error_status_t *pStatus);
381 typedef void (__RPC_API *CS_TYPE_FROM_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,byte *pNetworkData,unsigned long ulNetworkDataLength,unsigned long ulLocalBufferSize,void *pLocalData,unsigned long *pulLocalDataLength,error_status_t *pStatus);
382 typedef void (__RPC_API *CS_TAG_GETTING_ROUTINE)(RPC_BINDING_HANDLE hBinding,int fServerSide,unsigned long *pulSendingTag,unsigned long *pulDesiredReceivingTag,unsigned long *pulReceivingTag,error_status_t *pStatus);
383
384 void __RPC_API RpcCsGetTags(RPC_BINDING_HANDLE hBinding,int fServerSide,unsigned long *pulSendingTag,unsigned long *pulDesiredReceivingTag,unsigned long *pulReceivingTag,error_status_t *pStatus);
385
386 typedef struct _NDR_CS_SIZE_CONVERT_ROUTINES {
387 CS_TYPE_NET_SIZE_ROUTINE pfnNetSize;
388 CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs;
389 CS_TYPE_LOCAL_SIZE_ROUTINE pfnLocalSize;
390 CS_TYPE_FROM_NETCS_ROUTINE pfnFromNetCs;
391 } NDR_CS_SIZE_CONVERT_ROUTINES;
392
393 typedef struct _NDR_CS_ROUTINES {
394 NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines;
395 CS_TAG_GETTING_ROUTINE *pTagGettingRoutines;
396 } NDR_CS_ROUTINES;
397
398 typedef struct _MIDL_STUB_DESC {
399 void *RpcInterfaceInformation;
400 void *(__RPC_API *pfnAllocate)(size_t);
401 void (__RPC_API *pfnFree)(void *);
402 union {
403 handle_t *pAutoHandle;
404 handle_t *pPrimitiveHandle;
405 PGENERIC_BINDING_INFO pGenericBindingInfo;
406 } IMPLICIT_HANDLE_INFO;
407 const NDR_RUNDOWN *apfnNdrRundownRoutines;
408 const GENERIC_BINDING_ROUTINE_PAIR *aGenericBindingRoutinePairs;
409 const EXPR_EVAL *apfnExprEval;
410 const XMIT_ROUTINE_QUINTUPLE *aXmitQuintuple;
411 const unsigned char *pFormatTypes;
412 int fCheckBounds;
413 unsigned long Version;
414 MALLOC_FREE_STRUCT *pMallocFreeStruct;
415 long MIDLVersion;
416 const COMM_FAULT_OFFSETS *CommFaultOffsets;
417 const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
418 const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
419 ULONG_PTR mFlags;
420 const NDR_CS_ROUTINES *CsRoutineTables;
421 void *Reserved4;
422 ULONG_PTR Reserved5;
423 } MIDL_STUB_DESC;
424
425 typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC;
426 typedef void *PMIDL_XMIT_TYPE;
427
428 typedef struct _MIDL_FORMAT_STRING {
429 short Pad;
430 unsigned char Format[];
431 } MIDL_FORMAT_STRING;
432
433 typedef void (__RPC_API *STUB_THUNK)(PMIDL_STUB_MESSAGE);
434 typedef long (__RPC_API *SERVER_ROUTINE)();
435
436 typedef struct _MIDL_SERVER_INFO_ {
437 PMIDL_STUB_DESC pStubDesc;
438 const SERVER_ROUTINE *DispatchTable;
439 PFORMAT_STRING ProcString;
440 const unsigned short *FmtStringOffset;
441 const STUB_THUNK *ThunkTable;
442 PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
443 ULONG_PTR nCount;
444 PMIDL_SYNTAX_INFO pSyntaxInfo;
445 } MIDL_SERVER_INFO,*PMIDL_SERVER_INFO;
446
447#undef _MIDL_STUBLESS_PROXY_INFO
448
449 typedef struct _MIDL_STUBLESS_PROXY_INFO {
450 PMIDL_STUB_DESC pStubDesc;
451 PFORMAT_STRING ProcFormatString;
452 const unsigned short *FormatStringOffset;
453 PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
454 ULONG_PTR nCount;
455 PMIDL_SYNTAX_INFO pSyntaxInfo;
456 } MIDL_STUBLESS_PROXY_INFO;
457
458 typedef MIDL_STUBLESS_PROXY_INFO *PMIDL_STUBLESS_PROXY_INFO;
459
460 struct _MIDL_SYNTAX_INFO {
461 RPC_SYNTAX_IDENTIFIER TransferSyntax;
462 RPC_DISPATCH_TABLE *DispatchTable;
463 PFORMAT_STRING ProcString;
464 const unsigned short *FmtStringOffset;
465 PFORMAT_STRING TypeString;
466 const void *aUserMarshalQuadruple;
467 ULONG_PTR pReserved1;
468 ULONG_PTR pReserved2;
469 };
470
471 typedef unsigned short *PARAM_OFFSETTABLE,*PPARAM_OFFSETTABLE;
472
473 typedef union _CLIENT_CALL_RETURN {
474 void *Pointer;
475 LONG_PTR Simple;
476 } CLIENT_CALL_RETURN;
477
478 typedef enum {
479 XLAT_SERVER = 1,XLAT_CLIENT
480 } XLAT_SIDE;
481
482 typedef struct _FULL_PTR_TO_REFID_ELEMENT {
483 struct _FULL_PTR_TO_REFID_ELEMENT *Next;
484 void *Pointer;
485 unsigned long RefId;
486 unsigned char State;
487 } FULL_PTR_TO_REFID_ELEMENT,*PFULL_PTR_TO_REFID_ELEMENT;
488
489 typedef struct _FULL_PTR_XLAT_TABLES {
490
491 struct {
492 void **XlatTable;
493 unsigned char *StateTable;
494 unsigned long NumberOfEntries;
495 } RefIdToPointer;
496 struct {
497 PFULL_PTR_TO_REFID_ELEMENT *XlatTable;
498 unsigned long NumberOfBuckets;
499 unsigned long HashMask;
500 } PointerToRefId;
501 unsigned long NextRefId;
502 XLAT_SIDE XlatSide;
503 } FULL_PTR_XLAT_TABLES,*PFULL_PTR_XLAT_TABLES;
504
505 RPC_STATUS RPC_ENTRY NdrClientGetSupportedSyntaxes(RPC_CLIENT_INTERFACE *pInf,unsigned long *pCount,MIDL_SYNTAX_INFO **pArr);
506 RPC_STATUS RPC_ENTRY NdrServerGetSupportedSyntaxes(RPC_SERVER_INTERFACE *pInf,unsigned long *pCount,MIDL_SYNTAX_INFO **pArr,unsigned long *pPreferSyntaxIndex);
507 RPCRTAPI void RPC_ENTRY NdrSimpleTypeMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,unsigned char FormatChar);
508 RPCRTAPI unsigned char *RPC_ENTRY NdrPointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
509 RPCRTAPI unsigned char *RPC_ENTRY NdrCsArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
510 RPCRTAPI unsigned char *RPC_ENTRY NdrCsTagMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
511 RPCRTAPI unsigned char *RPC_ENTRY NdrSimpleStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
512 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
513 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantVaryingStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
514 RPCRTAPI unsigned char *RPC_ENTRY NdrComplexStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
515 RPCRTAPI unsigned char *RPC_ENTRY NdrFixedArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
516 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
517 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantVaryingArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
518 RPCRTAPI unsigned char *RPC_ENTRY NdrVaryingArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
519 RPCRTAPI unsigned char *RPC_ENTRY NdrComplexArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
520 RPCRTAPI unsigned char *RPC_ENTRY NdrNonConformantStringMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
521 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantStringMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
522 RPCRTAPI unsigned char *RPC_ENTRY NdrEncapsulatedUnionMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
523 RPCRTAPI unsigned char *RPC_ENTRY NdrNonEncapsulatedUnionMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
524 RPCRTAPI unsigned char *RPC_ENTRY NdrByteCountPointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
525 RPCRTAPI unsigned char *RPC_ENTRY NdrXmitOrRepAsMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
526 RPCRTAPI unsigned char *RPC_ENTRY NdrUserMarshalMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
527 RPCRTAPI unsigned char *RPC_ENTRY NdrInterfacePointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
528 RPCRTAPI void RPC_ENTRY NdrClientContextMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_CCONTEXT ContextHandle,int fCheck);
529 RPCRTAPI void RPC_ENTRY NdrServerContextMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_SCONTEXT ContextHandle,NDR_RUNDOWN RundownRoutine);
530 RPCRTAPI void RPC_ENTRY NdrServerContextNewMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_SCONTEXT ContextHandle,NDR_RUNDOWN RundownRoutine,PFORMAT_STRING pFormat);
531 RPCRTAPI void RPC_ENTRY NdrSimpleTypeUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,unsigned char FormatChar);
532 RPCRTAPI unsigned char *RPC_ENTRY NdrCsArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
533 RPCRTAPI unsigned char *RPC_ENTRY NdrCsTagUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
534 RPCRTAPI unsigned char *RPC_ENTRY NdrRangeUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
535 RPCRTAPI void RPC_ENTRY NdrCorrelationInitialize(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory,unsigned long CacheSize,unsigned long flags);
536 RPCRTAPI void RPC_ENTRY NdrCorrelationPass(PMIDL_STUB_MESSAGE pStubMsg);
537 RPCRTAPI void RPC_ENTRY NdrCorrelationFree(PMIDL_STUB_MESSAGE pStubMsg);
538 RPCRTAPI unsigned char *RPC_ENTRY NdrPointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
539 RPCRTAPI unsigned char *RPC_ENTRY NdrSimpleStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
540 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
541 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantVaryingStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
542 RPCRTAPI unsigned char *RPC_ENTRY NdrComplexStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
543 RPCRTAPI unsigned char *RPC_ENTRY NdrFixedArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
544 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
545 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantVaryingArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
546 RPCRTAPI unsigned char *RPC_ENTRY NdrVaryingArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
547 RPCRTAPI unsigned char *RPC_ENTRY NdrComplexArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
548 RPCRTAPI unsigned char *RPC_ENTRY NdrNonConformantStringUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
549 RPCRTAPI unsigned char *RPC_ENTRY NdrConformantStringUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
550 RPCRTAPI unsigned char *RPC_ENTRY NdrEncapsulatedUnionUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
551 RPCRTAPI unsigned char *RPC_ENTRY NdrNonEncapsulatedUnionUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
552 RPCRTAPI unsigned char *RPC_ENTRY NdrByteCountPointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
553 RPCRTAPI unsigned char *RPC_ENTRY NdrXmitOrRepAsUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
554 RPCRTAPI unsigned char *RPC_ENTRY NdrUserMarshalUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
555 RPCRTAPI unsigned char *RPC_ENTRY NdrInterfacePointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
556 RPCRTAPI void RPC_ENTRY NdrClientContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_CCONTEXT *pContextHandle,RPC_BINDING_HANDLE BindHandle);
557 RPCRTAPI NDR_SCONTEXT RPC_ENTRY NdrServerContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg);
558 RPCRTAPI NDR_SCONTEXT RPC_ENTRY NdrContextHandleInitialize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
559 RPCRTAPI NDR_SCONTEXT RPC_ENTRY NdrServerContextNewUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
560 RPCRTAPI void RPC_ENTRY NdrPointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
561 RPCRTAPI void RPC_ENTRY NdrCsArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
562 RPCRTAPI void RPC_ENTRY NdrCsTagBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
563 RPCRTAPI void RPC_ENTRY NdrSimpleStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
564 RPCRTAPI void RPC_ENTRY NdrConformantStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
565 RPCRTAPI void RPC_ENTRY NdrConformantVaryingStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
566 RPCRTAPI void RPC_ENTRY NdrComplexStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
567 RPCRTAPI void RPC_ENTRY NdrFixedArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
568 RPCRTAPI void RPC_ENTRY NdrConformantArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
569 RPCRTAPI void RPC_ENTRY NdrConformantVaryingArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
570 RPCRTAPI void RPC_ENTRY NdrVaryingArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
571 RPCRTAPI void RPC_ENTRY NdrComplexArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
572 RPCRTAPI void RPC_ENTRY NdrConformantStringBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
573 RPCRTAPI void RPC_ENTRY NdrNonConformantStringBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
574 RPCRTAPI void RPC_ENTRY NdrEncapsulatedUnionBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
575 RPCRTAPI void RPC_ENTRY NdrNonEncapsulatedUnionBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
576 RPCRTAPI void RPC_ENTRY NdrByteCountPointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
577 RPCRTAPI void RPC_ENTRY NdrXmitOrRepAsBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
578 RPCRTAPI void RPC_ENTRY NdrUserMarshalBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
579 RPCRTAPI void RPC_ENTRY NdrInterfacePointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
580 RPCRTAPI void RPC_ENTRY NdrContextHandleSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
581 RPCRTAPI unsigned long RPC_ENTRY NdrPointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
582 RPCRTAPI unsigned long RPC_ENTRY NdrCsArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
583 RPCRTAPI unsigned long RPC_ENTRY NdrCsTagMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
584 RPCRTAPI unsigned long RPC_ENTRY NdrSimpleStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
585 RPCRTAPI unsigned long RPC_ENTRY NdrConformantStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
586 RPCRTAPI unsigned long RPC_ENTRY NdrConformantVaryingStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
587 RPCRTAPI unsigned long RPC_ENTRY NdrComplexStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
588 RPCRTAPI unsigned long RPC_ENTRY NdrFixedArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
589 RPCRTAPI unsigned long RPC_ENTRY NdrConformantArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
590 RPCRTAPI unsigned long RPC_ENTRY NdrConformantVaryingArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
591 RPCRTAPI unsigned long RPC_ENTRY NdrVaryingArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
592 RPCRTAPI unsigned long RPC_ENTRY NdrComplexArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
593 RPCRTAPI unsigned long RPC_ENTRY NdrConformantStringMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
594 RPCRTAPI unsigned long RPC_ENTRY NdrNonConformantStringMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
595 RPCRTAPI unsigned long RPC_ENTRY NdrEncapsulatedUnionMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
596 RPCRTAPI unsigned long RPC_ENTRY NdrNonEncapsulatedUnionMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
597 RPCRTAPI unsigned long RPC_ENTRY NdrXmitOrRepAsMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
598 RPCRTAPI unsigned long RPC_ENTRY NdrUserMarshalMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
599 RPCRTAPI unsigned long RPC_ENTRY NdrInterfacePointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
600 RPCRTAPI void RPC_ENTRY NdrPointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
601 RPCRTAPI void RPC_ENTRY NdrCsArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
602 RPCRTAPI void RPC_ENTRY NdrSimpleStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
603 RPCRTAPI void RPC_ENTRY NdrConformantStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
604 RPCRTAPI void RPC_ENTRY NdrConformantVaryingStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
605 RPCRTAPI void RPC_ENTRY NdrComplexStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
606 RPCRTAPI void RPC_ENTRY NdrFixedArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
607 RPCRTAPI void RPC_ENTRY NdrConformantArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
608 RPCRTAPI void RPC_ENTRY NdrConformantVaryingArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
609 RPCRTAPI void RPC_ENTRY NdrVaryingArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
610 RPCRTAPI void RPC_ENTRY NdrComplexArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
611 RPCRTAPI void RPC_ENTRY NdrEncapsulatedUnionFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
612 RPCRTAPI void RPC_ENTRY NdrNonEncapsulatedUnionFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
613 RPCRTAPI void RPC_ENTRY NdrByteCountPointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
614 RPCRTAPI void RPC_ENTRY NdrXmitOrRepAsFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
615 RPCRTAPI void RPC_ENTRY NdrUserMarshalFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
616 RPCRTAPI void RPC_ENTRY NdrInterfacePointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
617 RPCRTAPI void RPC_ENTRY NdrConvert2(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat,long NumberParams);
618 RPCRTAPI void RPC_ENTRY NdrConvert(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
619
620#define USER_MARSHAL_FC_BYTE 1
621#define USER_MARSHAL_FC_CHAR 2
622#define USER_MARSHAL_FC_SMALL 3
623#define USER_MARSHAL_FC_USMALL 4
624#define USER_MARSHAL_FC_WCHAR 5
625#define USER_MARSHAL_FC_SHORT 6
626#define USER_MARSHAL_FC_USHORT 7
627#define USER_MARSHAL_FC_LONG 8
628#define USER_MARSHAL_FC_ULONG 9
629#define USER_MARSHAL_FC_FLOAT 10
630#define USER_MARSHAL_FC_HYPER 11
631#define USER_MARSHAL_FC_DOUBLE 12
632
633 RPCRTAPI unsigned char *RPC_ENTRY NdrUserMarshalSimpleTypeConvert(unsigned long *pFlags,unsigned char *pBuffer,unsigned char FormatChar);
634 RPCRTAPI void RPC_ENTRY NdrClientInitializeNew(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned int ProcNum);
635 RPCRTAPI unsigned char *RPC_ENTRY NdrServerInitializeNew(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor);
636 RPCRTAPI void RPC_ENTRY NdrServerInitializePartial(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned long RequestedBufferSize);
637 RPCRTAPI void RPC_ENTRY NdrClientInitialize(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned int ProcNum);
638 RPCRTAPI unsigned char *RPC_ENTRY NdrServerInitialize(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor);
639 RPCRTAPI unsigned char *RPC_ENTRY NdrServerInitializeUnmarshall (PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,PRPC_MESSAGE pRpcMsg);
640 RPCRTAPI void RPC_ENTRY NdrServerInitializeMarshall (PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg);
641 RPCRTAPI unsigned char *RPC_ENTRY NdrGetBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned long BufferLength,RPC_BINDING_HANDLE Handle);
642 RPCRTAPI unsigned char *RPC_ENTRY NdrNsGetBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned long BufferLength,RPC_BINDING_HANDLE Handle);
643 RPCRTAPI unsigned char *RPC_ENTRY NdrSendReceive(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pBufferEnd);
644 RPCRTAPI unsigned char *RPC_ENTRY NdrNsSendReceive(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pBufferEnd,RPC_BINDING_HANDLE *pAutoHandle);
645 RPCRTAPI void RPC_ENTRY NdrFreeBuffer(PMIDL_STUB_MESSAGE pStubMsg);
646 RPCRTAPI RPC_STATUS RPC_ENTRY NdrGetDcomProtocolVersion(PMIDL_STUB_MESSAGE pStubMsg,RPC_VERSION *pVersion);
647 CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrClientCall2(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
648 CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
649 CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrAsyncClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
650 CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrDcomAsyncClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
651
652 typedef enum {
653 STUB_UNMARSHAL,STUB_CALL_SERVER,STUB_MARSHAL,STUB_CALL_SERVER_NO_HRESULT
654 } STUB_PHASE;
655
656 typedef enum {
657 PROXY_CALCSIZE,PROXY_GETBUFFER,PROXY_MARSHAL,PROXY_SENDRECEIVE,PROXY_UNMARSHAL
658 } PROXY_PHASE;
659
660 struct IRpcStubBuffer;
661
662 RPCRTAPI void RPC_ENTRY NdrAsyncServerCall(PRPC_MESSAGE pRpcMsg);
663 RPCRTAPI long RPC_ENTRY NdrAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
664 RPCRTAPI long RPC_ENTRY NdrDcomAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
665 RPCRTAPI long RPC_ENTRY NdrStubCall2(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
666 RPCRTAPI void RPC_ENTRY NdrServerCall2(PRPC_MESSAGE pRpcMsg);
667 RPCRTAPI long RPC_ENTRY NdrStubCall (struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
668 RPCRTAPI void RPC_ENTRY NdrServerCall(PRPC_MESSAGE pRpcMsg);
669 RPCRTAPI int RPC_ENTRY NdrServerUnmarshall(struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,void *pParamList);
670 RPCRTAPI void RPC_ENTRY NdrServerMarshall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
671 RPCRTAPI RPC_STATUS RPC_ENTRY NdrMapCommAndFaultStatus(PMIDL_STUB_MESSAGE pStubMsg,unsigned long *pCommStatus,unsigned long *pFaultStatus,RPC_STATUS Status);
672 RPCRTAPI int RPC_ENTRY NdrSH_UPDecision(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,RPC_BUFPTR pBuffer);
673 RPCRTAPI int RPC_ENTRY NdrSH_TLUPDecision(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem);
674 RPCRTAPI int RPC_ENTRY NdrSH_TLUPDecisionBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem);
675 RPCRTAPI int RPC_ENTRY NdrSH_IfAlloc(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
676 RPCRTAPI int RPC_ENTRY NdrSH_IfAllocRef(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
677 RPCRTAPI int RPC_ENTRY NdrSH_IfAllocSet(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
678 RPCRTAPI RPC_BUFPTR RPC_ENTRY NdrSH_IfCopy(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
679 RPCRTAPI RPC_BUFPTR RPC_ENTRY NdrSH_IfAllocCopy(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
680 RPCRTAPI unsigned long RPC_ENTRY NdrSH_Copy(unsigned char *pStubMsg,unsigned char *pPtrInMem,unsigned long Count);
681 RPCRTAPI void RPC_ENTRY NdrSH_IfFree(PMIDL_STUB_MESSAGE pMessage,unsigned char *pPtr);
682 RPCRTAPI RPC_BUFPTR RPC_ENTRY NdrSH_StringMarshall(PMIDL_STUB_MESSAGE pMessage,unsigned char *pMemory,unsigned long Count,int Size);
683 RPCRTAPI RPC_BUFPTR RPC_ENTRY NdrSH_StringUnMarshall(PMIDL_STUB_MESSAGE pMessage,unsigned char **pMemory,int Size);
684
685 typedef void *RPC_SS_THREAD_HANDLE;
686
687 typedef void *__RPC_API RPC_CLIENT_ALLOC(size_t Size);
688 typedef void __RPC_API RPC_CLIENT_FREE(void *Ptr);
689
690 RPCRTAPI void *RPC_ENTRY RpcSsAllocate(size_t Size);
691 RPCRTAPI void RPC_ENTRY RpcSsDisableAllocate(void);
692 RPCRTAPI void RPC_ENTRY RpcSsEnableAllocate(void);
693 RPCRTAPI void RPC_ENTRY RpcSsFree(void *NodeToFree);
694 RPCRTAPI RPC_SS_THREAD_HANDLE RPC_ENTRY RpcSsGetThreadHandle(void);
695 RPCRTAPI void RPC_ENTRY RpcSsSetClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree);
696 RPCRTAPI void RPC_ENTRY RpcSsSetThreadHandle(RPC_SS_THREAD_HANDLE Id);
697 RPCRTAPI void RPC_ENTRY RpcSsSwapClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree,RPC_CLIENT_ALLOC **OldClientAlloc,RPC_CLIENT_FREE **OldClientFree);
698 RPCRTAPI void *RPC_ENTRY RpcSmAllocate(size_t Size,RPC_STATUS *pStatus);
699 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmClientFree(void *pNodeToFree);
700 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmDestroyClientContext(void **ContextHandle);
701 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmDisableAllocate(void);
702 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmEnableAllocate(void);
703 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmFree(void *NodeToFree);
704 RPCRTAPI RPC_SS_THREAD_HANDLE RPC_ENTRY RpcSmGetThreadHandle (RPC_STATUS *pStatus);
705 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmSetClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree);
706 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmSetThreadHandle(RPC_SS_THREAD_HANDLE Id);
707 RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmSwapClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree,RPC_CLIENT_ALLOC **OldClientAlloc,RPC_CLIENT_FREE **OldClientFree);
708 RPCRTAPI void RPC_ENTRY NdrRpcSsEnableAllocate(PMIDL_STUB_MESSAGE pMessage);
709 RPCRTAPI void RPC_ENTRY NdrRpcSsDisableAllocate(PMIDL_STUB_MESSAGE pMessage);
710 RPCRTAPI void RPC_ENTRY NdrRpcSmSetClientToOsf(PMIDL_STUB_MESSAGE pMessage);
711 RPCRTAPI void *RPC_ENTRY NdrRpcSmClientAllocate(size_t Size);
712 RPCRTAPI void RPC_ENTRY NdrRpcSmClientFree(void *NodeToFree);
713 RPCRTAPI void *RPC_ENTRY NdrRpcSsDefaultAllocate(size_t Size);
714 RPCRTAPI void RPC_ENTRY NdrRpcSsDefaultFree(void *NodeToFree);
715 RPCRTAPI PFULL_PTR_XLAT_TABLES RPC_ENTRY NdrFullPointerXlatInit(unsigned long NumberOfPointers,XLAT_SIDE XlatSide);
716 RPCRTAPI void RPC_ENTRY NdrFullPointerXlatFree(PFULL_PTR_XLAT_TABLES pXlatTables);
717 RPCRTAPI int RPC_ENTRY NdrFullPointerQueryPointer(PFULL_PTR_XLAT_TABLES pXlatTables,void *pPointer,unsigned char QueryType,unsigned long *pRefId);
718 RPCRTAPI int RPC_ENTRY NdrFullPointerQueryRefId(PFULL_PTR_XLAT_TABLES pXlatTables,unsigned long RefId,unsigned char QueryType,void **ppPointer);
719 RPCRTAPI void RPC_ENTRY NdrFullPointerInsertRefId(PFULL_PTR_XLAT_TABLES pXlatTables,unsigned long RefId,void *pPointer);
720 RPCRTAPI int RPC_ENTRY NdrFullPointerFree(PFULL_PTR_XLAT_TABLES pXlatTables,void *Pointer);
721 RPCRTAPI void *RPC_ENTRY NdrAllocate(PMIDL_STUB_MESSAGE pStubMsg,size_t Len);
722 RPCRTAPI void RPC_ENTRY NdrClearOutParameters(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat,void *ArgAddr);
723 RPCRTAPI void *RPC_ENTRY NdrOleAllocate(size_t Size);
724 RPCRTAPI void RPC_ENTRY NdrOleFree(void *NodeToFree);
725
726#ifdef CONST_VTABLE
727#define CONST_VTBL const
728#else
729#define CONST_VTBL
730#endif
731
732#ifndef DECLSPEC_SELECTANY
733#define DECLSPEC_SELECTANY __declspec(selectany)
734#endif
735
736#define MIDL_INTERFACE(x) struct
737#define EXTERN_GUID(itf,l1,s1,s2,c1,c2,c3,c4,c5,c6,c7,c8) EXTERN_C const IID DECLSPEC_SELECTANY itf = {l1,s1,s2,{c1,c2,c3,c4,c5,c6,c7,c8}}
738
739 typedef struct _NDR_USER_MARSHAL_INFO_LEVEL1 {
740 void *Buffer;
741 unsigned long BufferSize;
742 void *(__RPC_API *pfnAllocate)(size_t);
743 void (__RPC_API *pfnFree)(void *);
744 struct IRpcChannelBuffer *pRpcChannelBuffer;
745 ULONG_PTR Reserved[5];
746 } NDR_USER_MARSHAL_INFO_LEVEL1;
747
748 typedef struct _NDR_USER_MARSHAL_INFO {
749 unsigned long InformationLevel;
Kai Tietz19189cb2009-09-18 17:39:39 +0000750 __MINGW_EXTENSION union {
Kai Tietz9d937a72007-08-10 10:41:48 +0000751 NDR_USER_MARSHAL_INFO_LEVEL1 Level1;
752 };
753 } NDR_USER_MARSHAL_INFO;
754
755 RPC_STATUS RPC_ENTRY NdrGetUserMarshalInfo(unsigned long *pFlags,unsigned long InformationLevel,NDR_USER_MARSHAL_INFO *pMarshalInfo);
756 RPC_STATUS RPC_ENTRY NdrCreateServerInterfaceFromStub(struct IRpcStubBuffer *pStub,RPC_SERVER_INTERFACE *pServerIf);
757 CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrClientCall3(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
758 CLIENT_CALL_RETURN RPC_VAR_ENTRY Ndr64AsyncClientCall(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
759 CLIENT_CALL_RETURN RPC_VAR_ENTRY Ndr64DcomAsyncClientCall(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
760
761 struct IRpcStubBuffer;
762
763 RPCRTAPI void RPC_ENTRY Ndr64AsyncServerCall(PRPC_MESSAGE pRpcMsg);
764 RPCRTAPI void RPC_ENTRY Ndr64AsyncServerCall64(PRPC_MESSAGE pRpcMsg);
765 RPCRTAPI void RPC_ENTRY Ndr64AsyncServerCallAll(PRPC_MESSAGE pRpcMsg);
766 RPCRTAPI long RPC_ENTRY Ndr64AsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
767 RPCRTAPI long RPC_ENTRY Ndr64DcomAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
768 RPCRTAPI long RPC_ENTRY NdrStubCall3 (struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
769 RPCRTAPI void RPC_ENTRY NdrServerCallAll(PRPC_MESSAGE pRpcMsg);
770 RPCRTAPI void RPC_ENTRY NdrServerCallNdr64(PRPC_MESSAGE pRpcMsg);
771 RPCRTAPI void RPC_ENTRY NdrServerCall3(PRPC_MESSAGE pRpcMsg);
772 RPCRTAPI void RPC_ENTRY NdrPartialIgnoreClientMarshall(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory);
773 RPCRTAPI void RPC_ENTRY NdrPartialIgnoreServerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,void **ppMemory);
774 RPCRTAPI void RPC_ENTRY NdrPartialIgnoreClientBufferSize(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory);
775 RPCRTAPI void RPC_ENTRY NdrPartialIgnoreServerInitialize(PMIDL_STUB_MESSAGE pStubMsg,void **ppMemory,PFORMAT_STRING pFormat);
776 void RPC_ENTRY RpcUserFree(handle_t AsyncHandle,void *pBuffer);
777
778#ifdef __cplusplus
779}
780#endif
781
782#include <poppack.h>
783#endif