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