This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/WATCOM/h/nt/rpcndr.h

668 lines
38 KiB
C

/*
* rpcndr.h RPC Network Data Respresentation (NDR) functions
*
* =========================================================================
*
* Open Watcom Project
*
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
*
* This file is automatically generated. Do not edit directly.
*
* =========================================================================
*/
/* Version of this header */
#ifndef __RPCNDR_H_VERSION__
#define __RPCNDR_H_VERSION__ 500
#endif
#ifndef __RPCNDR_H__
#define __RPCNDR_H__
#ifndef _ENABLE_AUTODEPEND
#pragma read_only_file;
#endif
#include <basetsd.h>
#include <rpcnsip.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Calling convention for RPC functions with variable argument lists */
#define RPC_VAR_ENTRY __cdecl
/* MIDL base data types */
#define small char
typedef unsigned char byte;
typedef byte cs_byte;
typedef unsigned char boolean;
#define hyper __int64
/* Error status */
typedef unsigned long error_status_t;
/* Stub helper data types */
typedef unsigned char *RPC_BUFPTR;
typedef unsigned long RPC_LENGTH;
typedef const unsigned char *PFORMAT_STRING;
/* MIDL transmit type */
typedef void *PMIDL_XMIT_TYPE;
/* Offsetable parameter */
typedef unsigned short *PARAM_OFFSETABLE;
typedef unsigned short *PPARAM_OFFSETABLE;
/* RPC SS thread handle */
typedef void *RPC_SS_THREAD_HANDLE;
/* NDR flags */
#define NDR_CHAR_REP_MASK 0x0000000FL
#define NDR_INT_REP_MASK 0x000000F0L
#define NDR_FLOAT_REP_MASK 0x0000FF00L
#define NDR_LITTLE_ENDIAN 0x00000010L
#define NDR_BIG_ENDIAN 0x00000000L
#define NDR_IEEE_FLOAT 0x00000000L
#define NDR_VAX_FLOAT 0x00000100L
#define NDR_IBM_FLOAT 0x00000300L
#define NDR_ASCII_CHAR 0x00000000L
#define NDR_EBCDIC_CHAR 0x00000001L
#define NDR_LOCAL_DATA_REPRESENTATION 0x00000010L
#define NDR_LOCAL_ENDIAN NDR_LITTLE_ENDIAN
/* NDR server context size */
#define cbNDRContext 20
/* User marshal callback signature */
#define USER_MARSHAL_CB_SIGNATURE 'USRC'
/* User marshal flags */
#define USER_CALL_IS_ASYNC 0x00000100L
#define USER_CALL_NEW_CORRELATION_DESC 0x00000200L
/* Macros to manipulate user marshal flags */
#define USER_CALL_CTXT_MASK( x ) ((x) & 0x000000FFL)
#define USER_CALL_AUX_MASK( x ) ((x) & 0x0000FF00L)
#define GET_USER_DATA_REP( x ) ((x) >> 16)
/* User marshal format characters */
#define USER_MARSHAL_FC_BYTE 1
#define USER_MARSHAL_FC_CHAR 2
#define USER_MARSHAL_FC_SMALL 3
#define USER_MARSHAL_FC_USMALL 4
#define USER_MARSHAL_FC_WCHAR 5
#define USER_MARSHAL_FC_SHORT 6
#define USER_MARSHAL_FC_USHORT 7
#define USER_MARSHAL_FC_LONG 8
#define USER_MARSHAL_FC_ULONG 9
#define USER_MARSHAL_FC_FLOAT 10
#define USER_MARSHAL_FC_HYPER 11
#define USER_MARSHAL_FC_DOUBLE 12
/* Macro used by MIDL to declare an interface - ignore the UUID because the
* __declspec(uuid) attribute is Microsoft-specific.
*/
#define MIDL_INTERFACE( x ) struct
/* Abstract data types */
typedef struct _NDR_ASYNC_MESSAGE *PNDR_ASYNC_MESSAGE;
typedef struct _NDR_CORRELATION_INFO *PNDR_CORRELATION_INFO;
/* NDR client context */
typedef void *NDR_CCONTEXT;
/* NDR server context */
typedef struct {
void *pad[2];
void *userContext;
} *NDR_SCONTEXT;
/* NDR callbacks */
typedef void (RPC_ENTRY *NDR_RUNDOWN)( void * );
typedef void (RPC_ENTRY *NDR_NOTIFY_ROUTINE)( void );
typedef void (RPC_ENTRY *NDR_NOTIFY2_ROUTINE)( boolean );
/* NDR server context queue */
typedef struct _SCONTEXT_QUEUE {
unsigned long NumberOfObjects;
NDR_SCONTEXT *ArrayOfObjects;
} SCONTEXT_QUEUE;
typedef SCONTEXT_QUEUE *PSCONTEXT_QUEUE;
/* Expression evaluation callback */
typedef void (RPC_ENTRY *EXPR_EVAL)( struct _MIDL_STUB_MESSAGE * );
/* Array information */
typedef struct {
long Dimension;
unsigned long *BufferConformanceMark;
unsigned long *BufferVarianceMark;
unsigned long *MaxCountArray;
unsigned long *OffsetArray;
unsigned long *ActualCountArray;
} ARRAY_INFO;
typedef ARRAY_INFO *PARRAY_INFO;
/* MIDL stub message */
typedef struct _MIDL_STUB_MESSAGE {
PRPC_MESSAGE RpcMsg;
unsigned char *Buffer;
unsigned char *BufferStart;
unsigned char *BufferEnd;
unsigned char *BufferMark;
unsigned long BufferLength;
unsigned long MemorySize;
unsigned char *Memory;
unsigned char IsClient;
unsigned char Pad;
unsigned short uFlags2;
int ReuseBuffer;
struct NDR_ALLOC_ALL_NODES_CONTEXT *pAllocAllNodesContext;
struct NDR_POINTER_QUEUE_STATE *pPointerQueueState;
int IgnoreEmbeddedPointers;
unsigned char *PointerBufferMark;
unsigned char CorrDespIncrement;
unsigned char uFlags;
unsigned short UniquePtrCount;
ULONG_PTR MaxCount;
unsigned long Offset;
unsigned long ActualCount;
void *(RPC_ENTRY *pfnAllocate)( size_t );
void (RPC_ENTRY *pfnFree)( void * );
unsigned char *StackTop;
unsigned char *pPresentedType;
unsigned char *pTransmitType;
handle_t SavedHandle;
const struct _MIDL_STUB_DESC *StubDesc;
struct _FULL_PTR_XLAT_TABLES *FullPtrXlatTables;
unsigned long FullPtrRefId;
unsigned long PointerLength;
int fInDontFree : 1;
int fDontCallFreeInst : 1;
int fInOnlyParam : 1;
int fHasReturn : 1;
int fHasExtensions : 1;
int fHasNewCorrDesc : 1;
int fIsIn : 1;
int fIsOut : 1;
int fIsOicf : 1;
int fBufferValid : 1;
int fHasMemoryValidateCallback : 1;
int fInFree : 1;
int fNeedMCCP : 1;
int fUnused : 3;
int fUnused2 : 16;
unsigned long dwDestContext;
void *pvDestContext;
NDR_SCONTEXT *SavedContextHandles;
long ParamNumber;
struct IRpcChannelBuffer *pRpcChannelBuffer;
PARRAY_INFO pArrayInfo;
unsigned long *SizePtrCountArray;
unsigned long *SizePtrOffsetArray;
unsigned long *SizePtrLengthArray;
void *pArgQueue;
unsigned long dwStubPhase;
void *LowStackMark;
PNDR_ASYNC_MESSAGE pAsyncMsg;
PNDR_CORRELATION_INFO pCorrInfo;
unsigned char *pCorrMemory;
void *pMemoryList;
#if (NTDDI_VERSION >= 0x05000000)
INT_PTR pCSInfo;
unsigned char *ConformanceMark;
unsigned char *VarianceMark;
INT_PTR Unused;
struct _NDR_PROC_CONTEXT *pContext;
void *ContextHandleHash;
void *pUserMarshalList;
INT_PTR Reserved51_3;
INT_PTR Reserved51_4;
INT_PTR Reserved51_5;
#endif
} MIDL_STUB_MESSAGE;
typedef MIDL_STUB_MESSAGE *PMIDL_STUB_MESSAGE;
/* Generic binding routines */
typedef void *(RPC_ENTRY *GENERIC_BINDING_ROUTINE)( void * );
typedef void (RPC_ENTRY *GENERIC_UNBIND_ROUTINE)( void *, unsigned char * );
/* Generic binding routine pair */
typedef struct _GENERIC_BINDING_ROUTINE_PAIR {
GENERIC_BINDING_ROUTINE pfnBind;
GENERIC_UNBIND_ROUTINE pfnUnbind;
} GENERIC_BINDING_ROUTINE_PAIR;
typedef GENERIC_BINDING_ROUTINE_PAIR *PGENERIC_BINDING_ROUTINE_PAIR;
/* Generic binding information */
typedef struct __GENERIC_BINDING_INFO {
void *pObj;
unsigned int Size;
GENERIC_BINDING_ROUTINE pfnBind;
GENERIC_UNBIND_ROUTINE pfnUnbind;
} GENERIC_BINDING_INFO;
typedef GENERIC_BINDING_INFO *PGENERIC_BINDING_INFO;
/* Transmit helper routine */
typedef void (RPC_ENTRY *XMIT_HELPER_ROUTINE)( PMIDL_STUB_MESSAGE );
/* Transmit routine quintuple */
typedef struct _XMIT_ROUTINE_QUINTUPLE {
XMIT_HELPER_ROUTINE pfnTranslateToXmit;
XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
XMIT_HELPER_ROUTINE pfnFreeXmit;
XMIT_HELPER_ROUTINE pfnFreeInst;
} XMIT_ROUTINE_QUINTUPLE;
typedef XMIT_ROUTINE_QUINTUPLE *PXMIT_ROUTINE_QUINTUPLE;
/* User marshal routines */
typedef unsigned long (RPC_ENTRY *USER_MARSHAL_SIZING_ROUTINE)( unsigned long *, unsigned long, void * );
typedef unsigned char *(RPC_ENTRY *USER_MARSHAL_MARSHALLING_ROUTINE)( unsigned long *, unsigned char *, void * );
typedef unsigned char *(RPC_ENTRY *USER_MARSHAL_UNMARSHALLING_ROUTINE)( unsigned long *, unsigned char *, void * );
typedef void (RPC_ENTRY *USER_MARSHAL_FREEING_ROUTINE)( unsigned long *, void * );
/* User marshal routine quadruple */
typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE {
USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshal;
USER_MARSHAL_FREEING_ROUTINE pfnFree;
} USER_MARSHAL_ROUTINE_QUADRUPLE;
/* User marshal callback types */
typedef enum _USER_MARSHAL_CB_TYPE {
USER_MARSHAL_CB_BUFFER_SIZE = 0,
USER_MARSHAL_CB_MARSHALL = 1,
USER_MARSHAL_CB_UNMARSHALL = 2,
USER_MARSHAL_CB_FREE = 3
} USER_MARSHAL_CB_TYPE;
/* User marshall callback */
typedef struct _USER_MARSHAL_CB {
unsigned long Flags;
PMIDL_STUB_MESSAGE pStubMsg;
PFORMAT_STRING pReserve;
unsigned long Signature;
USER_MARSHAL_CB_TYPE CBType;
PFORMAT_STRING pFormat;
PFORMAT_STRING pTypeFormat;
} USER_MARSHAL_CB;
/* Allocate/free structure */
typedef struct _MALLOC_FREE_STRUCT {
void *(RPC_ENTRY *pfnAllocate)( size_t );
void (RPC_ENTRY *pfnFree)( void * );
} MALLOC_FREE_STRUCT;
/* Communication and fault offsets */
typedef struct _COMM_FAULT_OFFSETS {
short CommOffset;
short FaultOffset;
} COMM_FAULT_OFFSETS;
/* IDL character set conversions */
typedef enum _IDL_CS_CONVERT {
IDL_CS_NO_CONVERT = 0,
IDL_CS_IN_PLACE_CONVERT = 1,
IDL_CS_NEW_BUFFER_CONVERT = 2
} IDL_CS_CONVERT;
/* Character set routines */
typedef void (RPC_ENTRY *CS_TYPE_NET_SIZE_ROUTINE)( RPC_BINDING_HANDLE, unsigned long, unsigned long, IDL_CS_CONVERT *, unsigned long *, error_status_t * );
typedef void (RPC_ENTRY *CS_TYPE_LOCAL_SIZE_ROUTINE)( RPC_BINDING_HANDLE, unsigned long, unsigned long, IDL_CS_CONVERT *, unsigned long *, error_status_t * );
typedef void (RPC_ENTRY *CS_TYPE_TO_NETCS_ROUTINE)( RPC_BINDING_HANDLE, unsigned long, void *, unsigned long, byte *, unsigned long *, error_status_t * );
typedef void (RPC_ENTRY *CS_TYPE_FROM_NETCS_ROUTINE)( RPC_BINDING_HANDLE, unsigned long, byte *, unsigned long, unsigned long, void *, unsigned long *, error_status_t * );
typedef void (RPC_ENTRY *CS_TAG_GETTING_ROUTINE)( RPC_BINDING_HANDLE, int, unsigned long *, unsigned long *, unsigned long *, error_status_t * );
/* NDR character set size conversion routines */
typedef struct _NDR_CS_SIZE_CONVERT_ROUTINES {
CS_TYPE_NET_SIZE_ROUTINE pfnNetSize;
CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs;
CS_TYPE_LOCAL_SIZE_ROUTINE pfnLocalSize;
CS_TYPE_FROM_NETCS_ROUTINE pfnFromNetCs;
} NDR_CS_SIZE_CONVERT_ROUTINES;
/* NDR character set routines */
typedef struct _NDR_CS_ROUTINES {
NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines;
CS_TAG_GETTING_ROUTINE *pTagGettingRoutines;
} NDR_CS_ROUTINES;
/* NDR expression description */
typedef struct _NDR_EXPR_DESC {
const unsigned short *pOffset;
PFORMAT_STRING pFormatExpr;
} NDR_EXPR_DESC;
/* MIDL stub description */
typedef struct _MIDL_STUB_DESC {
void *RpcInterfaceInformation;
void *(RPC_ENTRY *pfnAllocate)( size_t );
void (RPC_ENTRY *pfnFree)( void * );
union {
handle_t *pAutoHandle;
handle_t *pPrimitiveHandle;
PGENERIC_BINDING_INFO pGenericBindingInfo;
} IMPLICIT_HANDLE_INFO;
const NDR_RUNDOWN *apfnNdrRundownRoutines;
const GENERIC_BINDING_ROUTINE_PAIR *aGenericBindingRoutinePairs;
const EXPR_EVAL *apfnExprEval;
const XMIT_ROUTINE_QUINTUPLE *aXmitQuintuple;
const unsigned char *pFormatTypes;
int fCheckBounds;
unsigned long Version;
MALLOC_FREE_STRUCT *pMallocFreeStruct;
long MIDLVersion;
const COMM_FAULT_OFFSETS *CommFaultOffsets;
const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
ULONG_PTR mFlags;
const NDR_CS_ROUTINES *CsRoutineTables;
void *ProxyServerInfo;
const NDR_EXPR_DESC *pExprInfo;
} MIDL_STUB_DESC;
typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC;
/* MIDL format string */
typedef struct _MIDL_FORMAT_STRING {
short Pad;
unsigned char Format[1];
} MIDL_FORMAT_STRING;
/* Stub thunk */
typedef void (RPC_ENTRY *STUB_THUNK)( PMIDL_STUB_MESSAGE );
/* Server routine */
typedef long (RPC_ENTRY *SERVER_ROUTINE)();
/* MIDL server information */
typedef struct _MIDL_SERVER_INFO {
PMIDL_STUB_DESC pStubDesc;
const SERVER_ROUTINE *DispatchTable;
PFORMAT_STRING ProcString;
const unsigned short *FmtStringOffset;
const STUB_THUNK *ThunkTable;
PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
ULONG_PTR nCount;
struct _MIDL_SYNTAX_INFO *pSyntaxInfo;
} MIDL_SERVER_INFO;
typedef MIDL_SERVER_INFO *PMIDL_SERVER_INFO;
/* MIDL stubless proxy information */
typedef struct _MIDL_STUBLESS_PROXY_INFO {
PMIDL_STUB_DESC pStubDesc;
PFORMAT_STRING ProcFormatString;
const unsigned short *FormatStringOffset;
PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
ULONG_PTR nCount;
struct _MIDL_SYNTAX_INFO *pSyntaxInfo;
} MIDL_STUBLESS_PROXY_INFO;
typedef MIDL_STUBLESS_PROXY_INFO *PMIDL_STUBLESS_PROXY_INFO;
/* MIDL syntax information */
typedef struct _MIDL_SYNTAX_INFO {
RPC_SYNTAX_IDENTIFIER TransferSyntax;
RPC_DISPATCH_TABLE *DispatchTable;
PFORMAT_STRING ProcString;
const unsigned short *FmtStringOffset;
PFORMAT_STRING TypeString;
const void *aUserMarshalQuadruple;
ULONG_PTR pReserved1;
ULONG_PTR pReserved2;
} MIDL_SYNTAX_INFO;
typedef MIDL_SYNTAX_INFO *PMIDL_SYNTAX_INFO;
/* NdrClientCall() returned data */
typedef union _CLIENT_CALL_RETURN {
void *Pointer;
LONG_PTR Simple;
} CLIENT_CALL_RETURN;
typedef CLIENT_CALL_RETURN *PCLIENT_CALL_RETURN;
/* Translation side */
typedef enum {
XLAT_SERVER = 1,
XLAT_CLIENT = 2
} XLAT_SIDE;
/* Full pointer translation tables */
typedef struct _FULL_PTR_XLAT_TABLES {
void *RefIdToPointer;
void *PointerToRefId;
unsigned long NextRefId;
XLAT_SIDE XlatSide;
} FULL_PTR_XLAT_TABLES;
typedef FULL_PTR_XLAT_TABLES *PFULL_PTR_XLAT_TABLES;
/* Stub phases */
typedef enum {
STUB_UNMARSHAL = 0,
STUB_CALL_SERVER = 1,
STUB_MARSHAL = 2,
STUB_CALL_SERVER_NO_HRESULT = 3
} STUB_PHASE;
/* Proxy phases */
typedef enum {
PROXY_CALCSIZE = 0,
PROXY_GETBUFFER = 1,
PROXY_MARSHAL = 2,
PROXY_SENDRECEIVE = 3,
PROXY_UNMARSHAL = 4
} PROXY_PHASE;
/* RPC client memory allocation callbacks */
typedef void * RPC_ENTRY RPC_CLIENT_ALLOC( size_t );
typedef void RPC_ENTRY RPC_CLIENT_FREE( void * );
/* NDR user marshal information (level 1) */
typedef struct _NDR_USER_MARSHAL_INFO_LEVEL1 {
void *Buffer;
unsigned long BufferSize;
void *(RPC_ENTRY *pfnAllocate)( size_t );
void (RPC_ENTRY *pfnFree)( void * );
struct IRpcChannelBuffer *pRpcChannelBuffer;
ULONG_PTR Reserved[5];
} NDR_USER_MARSHAL_INFO_LEVEL1;
/* NDR user marshal information */
typedef struct _NDR_USER_MARSHAL_INFO {
unsigned long InformationLevel;
union {
NDR_USER_MARSHAL_INFO_LEVEL1 Level1;
};
} NDR_USER_MARSHAL_INFO;
/* Functions in RPCRT4.DLL */
RPCRTAPI RPC_BINDING_HANDLE RPC_ENTRY NDRCContextBinding( NDR_CCONTEXT );
RPCRTAPI void RPC_ENTRY NDRCContextMarshall( NDR_CCONTEXT, void * );
RPCRTAPI void RPC_ENTRY NDRCContextUnmarshall( NDR_CCONTEXT *, RPC_BINDING_HANDLE, void *, unsigned long * );
RPCRTAPI void RPC_ENTRY NDRSContextMarshall( NDR_SCONTEXT, void *, NDR_RUNDOWN );
RPCRTAPI void RPC_ENTRY NDRSContextMarshall2( RPC_BINDING_HANDLE, NDR_SCONTEXT, void *, NDR_RUNDOWN, void *, unsigned long );
RPCRTAPI void RPC_ENTRY NDRSContextMarshallEx( RPC_BINDING_HANDLE, NDR_SCONTEXT, void *, NDR_RUNDOWN );
RPCRTAPI NDR_SCONTEXT RPC_ENTRY NDRSContextUnmarshall( void *, unsigned long );
RPCRTAPI NDR_SCONTEXT RPC_ENTRY NDRSContextUnmarshall2( RPC_BINDING_HANDLE, void *, unsigned long, void *, unsigned long );
RPCRTAPI NDR_SCONTEXT RPC_ENTRY NDRSContextUnmarshallEx( RPC_BINDING_HANDLE, void *, unsigned long );
RPCRTAPI void * RPC_ENTRY NdrAllocate( PMIDL_STUB_MESSAGE, size_t );
RPCRTAPI CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrAsyncClientCall( PMIDL_STUB_DESC, PFORMAT_STRING, ... );
RPCRTAPI void RPC_ENTRY NdrAsyncServerCall( PRPC_MESSAGE );
RPCRTAPI long RPC_ENTRY NdrAsyncStubCall( struct IRpcStubBuffer *, struct IRpcChannelBuffer *, PRPC_MESSAGE, unsigned long * );
RPCRTAPI void RPC_ENTRY NdrByteCountPointerBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrByteCountPointerFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrByteCountPointerMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrByteCountPointerUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrClearOutParameters( PMIDL_STUB_MESSAGE, PFORMAT_STRING, void * );
RPCRTAPI CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrClientCall( PMIDL_STUB_DESC, PFORMAT_STRING, ... );
RPCRTAPI CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrClientCall2( PMIDL_STUB_DESC, PFORMAT_STRING, ... );
RPCRTAPI void RPC_ENTRY NdrClientContextMarshall( PMIDL_STUB_MESSAGE, NDR_CCONTEXT, int );
RPCRTAPI void RPC_ENTRY NdrClientContextUnmarshall( PMIDL_STUB_MESSAGE, NDR_CCONTEXT *, RPC_BINDING_HANDLE );
RPCRTAPI void RPC_ENTRY NdrClientInitialize( PRPC_MESSAGE, PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC, unsigned int );
RPCRTAPI void RPC_ENTRY NdrClientInitializeNew( PRPC_MESSAGE, PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC, unsigned int );
RPCRTAPI void RPC_ENTRY NdrComplexArrayBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrComplexArrayFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrComplexArrayMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrComplexArrayMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrComplexArrayUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrComplexStructBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrComplexStructFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrComplexStructMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrComplexStructMemorySize( PMIDL_STUB_MESSAGE, unsigned long );
RPCRTAPI unsigned char * RPC_ENTRY NdrComplexStructUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrConformantArrayBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrConformantArrayFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantArrayMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrConformantArrayMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantArrayUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrConformantStringBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantStringMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrConformantStringMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantStringUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrConformantStructBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrConformantStructFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantStructMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrConformantStructMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantStructUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrConformantVaryingArrayBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrConformantVaryingArrayFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantVaryingArrayMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrConformantVaryingArrayMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantVaryingArrayUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrConformantVaryingStructBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrConformantVaryingStructFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantVaryingStructMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrConformantVaryingStructMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrConformantVaryingStructUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI NDR_SCONTEXT RPC_ENTRY NdrContextHandleInitialize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrContextHandleSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrConvert( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrConvert2( PMIDL_STUB_MESSAGE, PFORMAT_STRING, long );
RPCRTAPI void RPC_ENTRY NdrCorrelationFree( PMIDL_STUB_MESSAGE );
RPCRTAPI void RPC_ENTRY NdrCorrelationInitialize( PMIDL_STUB_MESSAGE, void *, unsigned long, unsigned long );
RPCRTAPI void RPC_ENTRY NdrCorrelationPass( PMIDL_STUB_MESSAGE );
RPCRTAPI RPC_STATUS RPC_ENTRY NdrCreateServerInterfaceFromStub( struct IRpcStubBuffer *, RPC_SERVER_INTERFACE * );
RPCRTAPI CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrDcomAsyncClientCall( PMIDL_STUB_DESC, PFORMAT_STRING, ... );
RPCRTAPI long RPC_ENTRY NdrDcomAsyncStubCall( struct IRpcStubBuffer *, struct IRpcChannelBuffer *, PRPC_MESSAGE, unsigned long * );
RPCRTAPI void RPC_ENTRY NdrEncapsulatedUnionBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrEncapsulatedUnionSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrEncapsulatedUnionMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrEncapsulatedUnionMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrEncapsulatedUnionUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrFixedArrayBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrFixedArrayFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrFixedArrayMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrFixedArrayMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrFixedArrayUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrFreeBuffer( PMIDL_STUB_MESSAGE );
RPCRTAPI void RPC_ENTRY NdrFullPointerXlatFree( PFULL_PTR_XLAT_TABLES );
RPCRTAPI PFULL_PTR_XLAT_TABLES RPC_ENTRY NdrFullPointerXlatInit( unsigned long, XLAT_SIDE );
RPCRTAPI unsigned char * RPC_ENTRY NdrGetBuffer( PMIDL_STUB_MESSAGE, unsigned long, RPC_BINDING_HANDLE );
RPCRTAPI RPC_STATUS RPC_ENTRY NdrGetDcomProtocolVersion( PMIDL_STUB_MESSAGE, RPC_VERSION * );
RPCRTAPI RPC_STATUS RPC_ENTRY NdrGetUserMarshalInfo( unsigned long *, unsigned long, NDR_USER_MARSHAL_INFO * );
RPCRTAPI void RPC_ENTRY NdrInterfacePointerBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrInterfacePointerFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrInterfacePointerMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrInterfacePointerMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrInterfacePointerUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI RPC_STATUS RPC_ENTRY NdrMapCommAndFaultStatus( PMIDL_STUB_MESSAGE, unsigned long *, unsigned long *, RPC_STATUS );
RPCRTAPI void RPC_ENTRY NdrNonConformantStringBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrNonConformantStringMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrNonConformantStringMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrNonConformantStringUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrNonEncapsulatedUnionBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrNonEncapsulatedUnionFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrNonEncapsulatedUnionMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrNonEncapsulatedUnionMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrNonEncapsulatedUnionUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI unsigned char * RPC_ENTRY NdrNsGetBuffer( PMIDL_STUB_MESSAGE, unsigned long, RPC_BINDING_HANDLE );
RPCRTAPI unsigned char * RPC_ENTRY NdrNsSendReceive( PMIDL_STUB_MESSAGE, unsigned char *, RPC_BINDING_HANDLE * );
RPCRTAPI void * RPC_ENTRY NdrOleAllocate( size_t );
RPCRTAPI void RPC_ENTRY NdrOleFree( void * );
RPCRTAPI void RPC_ENTRY NdrPartialIgnoreClientBufferSize( PMIDL_STUB_MESSAGE, void * );
RPCRTAPI void RPC_ENTRY NdrPartialIgnoreClientMarshall( PMIDL_STUB_MESSAGE, void * );
RPCRTAPI void RPC_ENTRY NdrPartialIgnoreServerInitialize( PMIDL_STUB_MESSAGE, void **, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrPartialIgnoreServerUnmarshall( PMIDL_STUB_MESSAGE, void ** );
RPCRTAPI void RPC_ENTRY NdrPointerBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrPointerFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrPointerMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrPointerMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrPointerUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI unsigned char * RPC_ENTRY NdrRangeUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void * RPC_ENTRY NdrRpcSmClientAllocate( size_t );
RPCRTAPI void RPC_ENTRY NdrRpcSmClientFree( void * );
RPCRTAPI void RPC_ENTRY NdrRpcSmSetClientToOsf( PMIDL_STUB_MESSAGE );
RPCRTAPI void * RPC_ENTRY NdrRpcSsDefaultAllocate( size_t );
RPCRTAPI void RPC_ENTRY NdrRpcSsDefaultFree( void * );
RPCRTAPI void RPC_ENTRY NdrRpcSsDisableAllocate( PMIDL_STUB_MESSAGE );
RPCRTAPI void RPC_ENTRY NdrRpcSsEnableAllocate( PMIDL_STUB_MESSAGE );
RPCRTAPI unsigned char * RPC_ENTRY NdrSendReceive( PMIDL_STUB_MESSAGE, unsigned char * );
RPCRTAPI void RPC_ENTRY NdrServerCall( PRPC_MESSAGE );
RPCRTAPI void RPC_ENTRY NdrServerCall2( PRPC_MESSAGE );
RPCRTAPI void RPC_ENTRY NdrServerContextMarshall( PMIDL_STUB_MESSAGE, NDR_SCONTEXT, NDR_RUNDOWN );
RPCRTAPI void RPC_ENTRY NdrServerContextNewMarshall( PMIDL_STUB_MESSAGE, NDR_SCONTEXT, NDR_RUNDOWN, PFORMAT_STRING );
RPCRTAPI NDR_SCONTEXT RPC_ENTRY NdrServerContextNewUnmarshall( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI NDR_SCONTEXT RPC_ENTRY NdrServerContextUnmarshall( PMIDL_STUB_MESSAGE );
RPCRTAPI unsigned char * RPC_ENTRY NdrServerInitialize( PRPC_MESSAGE, PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC );
RPCRTAPI void RPC_ENTRY NdrServerInitializeMarshall( PRPC_MESSAGE, PMIDL_STUB_MESSAGE );
RPCRTAPI unsigned char * RPC_ENTRY NdrServerInitializeNew( PRPC_MESSAGE, PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC );
RPCRTAPI void RPC_ENTRY NdrServerInitializePartial( PRPC_MESSAGE, PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC );
RPCRTAPI unsigned char * RPC_ENTRY NdrServerInitializeUnmarshall( PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC, PRPC_MESSAGE );
RPCRTAPI void RPC_ENTRY NdrServerMarshall( void *, void *, PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI int RPC_ENTRY NdrServerUnmarshall( void *, PRPC_MESSAGE, PMIDL_STUB_MESSAGE, PMIDL_STUB_DESC, PFORMAT_STRING, void * );
RPCRTAPI void RPC_ENTRY NdrSimpleStructBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrSimpleStructFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrSimpleStructMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrSimpleStructMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrSimpleStructUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrSimpleTypeMarshall( PMIDL_STUB_MESSAGE, unsigned char *, unsigned char );
RPCRTAPI void RPC_ENTRY NdrSimpleTypeUnmarshall( PMIDL_STUB_MESSAGE, unsigned char *, unsigned char );
RPCRTAPI long RPC_ENTRY NdrStubCall( void *, void *, PRPC_MESSAGE, unsigned long * );
RPCRTAPI long RPC_ENTRY NdrStubCall2( void *, void *, PRPC_MESSAGE, unsigned long * );
RPCRTAPI void RPC_ENTRY NdrUserMarshalBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrUserMarshalFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrUserMarshalMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrUserMarshalMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrUserMarshalSimpleTypeConvert( unsigned long *, unsigned char *, unsigned char );
RPCRTAPI unsigned char * RPC_ENTRY NdrUserMarshalUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrVaryingArrayBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrVaryingArrayFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrVaryingArrayMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrVaryingArrayMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrVaryingArrayUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void RPC_ENTRY NdrXmitOrRepAsBufferSize( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI void RPC_ENTRY NdrXmitOrRepAsFree( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrXmitOrRepAsMarshall( PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING );
RPCRTAPI unsigned long RPC_ENTRY NdrXmitOrRepAsMemorySize( PMIDL_STUB_MESSAGE, PFORMAT_STRING );
RPCRTAPI unsigned char * RPC_ENTRY NdrXmitOrRepAsUnmarshall( PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char );
RPCRTAPI void * RPC_ENTRY RpcSmAllocate( size_t, RPC_STATUS * );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmClientFree( void * );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmDestroyClientContext( void ** );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmDisableAllocate( void );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmEnableAllocate( void );
RPCRTAPI RPC_STATUS RPC_ENTRY RpsSmFree( void * );
RPCRTAPI RPC_SS_THREAD_HANDLE RPC_ENTRY RpcSmGetThreadHandle( RPC_STATUS * );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmSetClientAllocFree( RPC_CLIENT_ALLOC *, RPC_CLIENT_FREE * );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmSetThreadHandle( RPC_SS_THREAD_HANDLE );
RPCRTAPI RPC_STATUS RPC_ENTRY RpcSmSwapClientAllocFree( RPC_CLIENT_ALLOC *, RPC_CLIENT_FREE *, RPC_CLIENT_ALLOC **, RPC_CLIENT_FREE ** );
RPCRTAPI void * RPC_ENTRY RpcSsAllocate( size_t );
RPCRTAPI void RPC_ENTRY RpcSsDestroyClientContext( void ** );
RPCRTAPI void RPC_ENTRY RpcSsDisableAllocate( void );
RPCRTAPI void RPC_ENTRY RpcSsEnableAllocate( void );
RPCRTAPI void RPC_ENTRY RpcSsFree( void * );
RPCRTAPI RPC_SS_THREAD_HANDLE RPC_ENTRY RpcSsGetThreadHandle( void );
RPCRTAPI void RPC_ENTRY RpcSsSetClientAllocFree( RPC_CLIENT_ALLOC *, RPC_CLIENT_FREE * );
RPCRTAPI void RPC_ENTRY RpcSsSetThreadHandle( RPC_SS_THREAD_HANDLE );
RPCRTAPI void RPC_ENTRY RpcSsSwapClientAllocFree( RPC_CLIENT_ALLOC *, RPC_CLIENT_FREE *, RPC_CLIENT_ALLOC **, RPC_CLIENT_FREE ** );
RPCRTAPI void RPC_ENTRY RpcUserFree( handle_t, void * );
/* Functions implemented as macros */
#define NDRSContextValue( x ) (&(x)->userContext)
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* __RPCNDR_H__ */