holdingarea/llvm/llvm-gcc4.2-2.7-x86-mingw32/include/rpcdcep.h
branchbug235_bringup_0
changeset 20 d2d6724aef32
equal deleted inserted replaced
19:da7c1a80df0d 20:d2d6724aef32
       
     1 #ifndef _RPCDCEP_H
       
     2 #define _RPCDCEP_H
       
     3 #if __GNUC__ >=3
       
     4 #pragma GCC system_header
       
     5 #endif
       
     6 
       
     7 #ifdef __cplusplus
       
     8 extern "C" {
       
     9 #endif
       
    10 #define RPC_NCA_FLAGS_DEFAULT 0
       
    11 #define RPC_NCA_FLAGS_IDEMPOTENT 1
       
    12 #define RPC_NCA_FLAGS_BROADCAST 2
       
    13 #define RPC_NCA_FLAGS_MAYBE 4
       
    14 #define RPCFLG_ASYNCHRONOUS 0x40000000
       
    15 #define RPCFLG_INPUT_SYNCHRONOUS 0x20000000
       
    16 #define RPC_FLAGS_VALID_BIT 0x8000
       
    17 #define TRANSPORT_TYPE_CN 1
       
    18 #define TRANSPORT_TYPE_DG 2
       
    19 #define TRANSPORT_TYPE_LPC 4
       
    20 #define TRANSPORT_TYPE_WMSG 8
       
    21 
       
    22 typedef struct _RPC_VERSION {
       
    23 	unsigned short MajorVersion;
       
    24 	unsigned short MinorVersion;
       
    25 } RPC_VERSION;
       
    26 typedef struct _RPC_SYNTAX_IDENTIFIER {
       
    27 	GUID SyntaxGUID;
       
    28 	RPC_VERSION SyntaxVersion;
       
    29 } RPC_SYNTAX_IDENTIFIER, *PRPC_SYNTAX_IDENTIFIER;
       
    30 typedef struct _RPC_MESSAGE {
       
    31 	HANDLE Handle;
       
    32 	unsigned long DataRepresentation;
       
    33 	void *Buffer;
       
    34 	unsigned int BufferLength;
       
    35 	unsigned int ProcNum;
       
    36 	PRPC_SYNTAX_IDENTIFIER TransferSyntax;
       
    37 	void *RpcInterfaceInformation;
       
    38 	void *ReservedForRuntime;
       
    39 	void *ManagerEpv;
       
    40 	void *ImportContext;
       
    41 	unsigned long RpcFlags;
       
    42 } RPC_MESSAGE,*PRPC_MESSAGE;
       
    43 typedef long __stdcall RPC_FORWARD_FUNCTION(GUID*,RPC_VERSION*,GUID*,unsigned char*,void**);
       
    44 typedef void(__stdcall *RPC_DISPATCH_FUNCTION) ( PRPC_MESSAGE Message);
       
    45 typedef struct {
       
    46 	unsigned int DispatchTableCount;
       
    47 	RPC_DISPATCH_FUNCTION *DispatchTable;
       
    48 	int Reserved;
       
    49 } RPC_DISPATCH_TABLE,*PRPC_DISPATCH_TABLE;
       
    50 typedef struct _RPC_PROTSEQ_ENDPOINT {
       
    51 	unsigned char *RpcProtocolSequence;
       
    52 	unsigned char *Endpoint;
       
    53 } RPC_PROTSEQ_ENDPOINT,*PRPC_PROTSEQ_ENDPOINT;
       
    54 typedef struct _RPC_SERVER_INTERFACE {
       
    55 	unsigned int Length;
       
    56 	RPC_SYNTAX_IDENTIFIER InterfaceId;
       
    57 	RPC_SYNTAX_IDENTIFIER TransferSyntax;
       
    58 	PRPC_DISPATCH_TABLE DispatchTable;
       
    59 	unsigned int RpcProtseqEndpointCount;
       
    60 	PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
       
    61 	void *DefaultManagerEpv;
       
    62 	void const *InterpreterInfo;
       
    63 } RPC_SERVER_INTERFACE,*PRPC_SERVER_INTERFACE;
       
    64 typedef struct _RPC_CLIENT_INTERFACE {
       
    65 	unsigned int Length;
       
    66 	RPC_SYNTAX_IDENTIFIER InterfaceId;
       
    67 	RPC_SYNTAX_IDENTIFIER TransferSyntax;
       
    68 	PRPC_DISPATCH_TABLE DispatchTable;
       
    69 	unsigned int RpcProtseqEndpointCount;
       
    70 	PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
       
    71 	unsigned long Reserved;
       
    72 	void const *InterpreterInfo;
       
    73 } RPC_CLIENT_INTERFACE,*PRPC_CLIENT_INTERFACE;
       
    74 typedef void *I_RPC_MUTEX;
       
    75 typedef struct _RPC_TRANSFER_SYNTAX {
       
    76 	GUID Uuid;
       
    77 	unsigned short VersMajor;
       
    78 	unsigned short VersMinor;
       
    79 } RPC_TRANSFER_SYNTAX;
       
    80 typedef RPC_STATUS (*RPC_BLOCKING_FN)(void*,void*,void*);
       
    81 
       
    82 long __stdcall I_RpcGetBuffer(RPC_MESSAGE*);
       
    83 long __stdcall I_RpcSendReceive(RPC_MESSAGE*);
       
    84 long __stdcall I_RpcSend(RPC_MESSAGE*);
       
    85 long __stdcall I_RpcFreeBuffer(RPC_MESSAGE*);
       
    86 void __stdcall I_RpcRequestMutex(I_RPC_MUTEX*);
       
    87 void __stdcall I_RpcClearMutex(I_RPC_MUTEX);
       
    88 void __stdcall I_RpcDeleteMutex(I_RPC_MUTEX);
       
    89 DECLARE_STDCALL_P(void *) I_RpcAllocate(unsigned int);
       
    90 void __stdcall I_RpcFree(void*);
       
    91 void __stdcall I_RpcPauseExecution(unsigned long);
       
    92 typedef void(__stdcall *PRPC_RUNDOWN) (void*);
       
    93 long __stdcall I_RpcMonitorAssociation(HANDLE,PRPC_RUNDOWN,void*);
       
    94 long __stdcall I_RpcStopMonitorAssociation(HANDLE);
       
    95 HANDLE __stdcall I_RpcGetCurrentCallHandle(void);
       
    96 long __stdcall I_RpcGetAssociationContext(void**);
       
    97 long __stdcall I_RpcSetAssociationContext(void*);
       
    98 #ifdef __RPC_NT__
       
    99 long __stdcall I_RpcNsBindingSetEntryName(HANDLE,unsigned long,unsigned short*);
       
   100 long __stdcall I_RpcBindingInqDynamicEndpoint(HANDLE, unsigned short**);
       
   101 #else
       
   102 long __stdcall I_RpcNsBindingSetEntryName(HANDLE,unsigned long,unsigned char*);
       
   103 long __stdcall I_RpcBindingInqDynamicEndpoint(HANDLE,unsigned char**);
       
   104 #endif
       
   105 long __stdcall I_RpcBindingInqTransportType(HANDLE,unsigned int*);
       
   106 long __stdcall I_RpcIfInqTransferSyntaxes(HANDLE,RPC_TRANSFER_SYNTAX*,unsigned int,unsigned int*);
       
   107 long __stdcall I_UuidCreate(GUID*);
       
   108 long __stdcall I_RpcBindingCopy(HANDLE,HANDLE*);
       
   109 long __stdcall I_RpcBindingIsClientLocal(HANDLE,unsigned int*);
       
   110 void __stdcall I_RpcSsDontSerializeContext(void);
       
   111 long __stdcall I_RpcServerRegisterForwardFunction(RPC_FORWARD_FUNCTION*);
       
   112 long __stdcall I_RpcConnectionInqSockBuffSize(unsigned long*,unsigned long*);
       
   113 long __stdcall I_RpcConnectionSetSockBuffSize(unsigned long,unsigned long);
       
   114 long __stdcall I_RpcBindingSetAsync(HANDLE,RPC_BLOCKING_FN);
       
   115 long __stdcall I_RpcAsyncSendReceive(RPC_MESSAGE*,void*);
       
   116 long __stdcall I_RpcGetThreadWindowHandle(void**);
       
   117 long __stdcall I_RpcServerThreadPauseListening(void);
       
   118 long __stdcall I_RpcServerThreadContinueListening(void);
       
   119 long __stdcall I_RpcServerUnregisterEndpointA(unsigned char*,unsigned char*);
       
   120 long __stdcall I_RpcServerUnregisterEndpointW(unsigned short*,unsigned short*);
       
   121 #ifdef UNICODE
       
   122 #define I_RpcServerUnregisterEndpoint I_RpcServerUnregisterEndpointW
       
   123 #else
       
   124 #define I_RpcServerUnregisterEndpoint I_RpcServerUnregisterEndpointA
       
   125 #endif
       
   126 #ifdef __cplusplus
       
   127 }
       
   128 #endif
       
   129 #endif