Alexandre Julliard | 0799c1a | 2002-03-09 23:29:33 +0000 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2000 Francois Gouget |
| 3 | * |
| 4 | * This library is free software; you can redistribute it and/or |
| 5 | * modify it under the terms of the GNU Lesser General Public |
| 6 | * License as published by the Free Software Foundation; either |
| 7 | * version 2.1 of the License, or (at your option) any later version. |
| 8 | * |
| 9 | * This library is distributed in the hope that it will be useful, |
| 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 12 | * Lesser General Public License for more details. |
| 13 | * |
| 14 | * You should have received a copy of the GNU Lesser General Public |
| 15 | * License along with this library; if not, write to the Free Software |
| 16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| 17 | */ |
| 18 | |
Francois Gouget | 552fddc | 2000-11-08 05:06:10 +0000 | [diff] [blame] | 19 | #ifndef __WINE_RPCDCE_H |
| 20 | #define __WINE_RPCDCE_H |
| 21 | |
Peter Lemenkov | 66f839d | 2005-11-14 11:20:30 +0000 | [diff] [blame] | 22 | #ifdef __cplusplus |
| 23 | extern "C" { |
| 24 | #endif |
| 25 | |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 26 | #ifndef IN |
| 27 | #define IN |
| 28 | #endif |
| 29 | #ifndef OUT |
| 30 | #define OUT |
| 31 | #endif |
| 32 | #ifndef OPTIONAL |
| 33 | #define OPTIONAL |
| 34 | #endif |
| 35 | |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 36 | #ifndef GUID_DEFINED |
Dimitrie O. Paun | 53f9c21 | 2003-08-28 21:43:34 +0000 | [diff] [blame] | 37 | #include <guiddef.h> |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 38 | #endif |
| 39 | |
Ove Kaaven | 01bdccb | 2002-12-18 02:21:38 +0000 | [diff] [blame] | 40 | #ifndef UUID_DEFINED |
| 41 | #define UUID_DEFINED |
| 42 | typedef GUID UUID; |
| 43 | #endif |
| 44 | |
Francois Gouget | 552fddc | 2000-11-08 05:06:10 +0000 | [diff] [blame] | 45 | typedef void* RPC_AUTH_IDENTITY_HANDLE; |
| 46 | typedef void* RPC_AUTHZ_HANDLE; |
| 47 | typedef void* RPC_IF_HANDLE; |
| 48 | typedef I_RPC_HANDLE RPC_BINDING_HANDLE; |
| 49 | typedef RPC_BINDING_HANDLE handle_t; |
| 50 | #define rpc_binding_handle_t RPC_BINDING_HANDLE |
| 51 | #define RPC_MGR_EPV void |
| 52 | |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 53 | typedef struct _RPC_BINDING_VECTOR |
| 54 | { |
| 55 | unsigned long Count; |
| 56 | RPC_BINDING_HANDLE BindingH[1]; |
Francois Gouget | 02236f0 | 2004-09-08 01:27:24 +0000 | [diff] [blame] | 57 | } RPC_BINDING_VECTOR; |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 58 | #define rpc_binding_vector_t RPC_BINDING_VECTOR |
| 59 | |
| 60 | typedef struct _UUID_VECTOR |
| 61 | { |
| 62 | unsigned long Count; |
| 63 | UUID *Uuid[1]; |
Francois Gouget | 02236f0 | 2004-09-08 01:27:24 +0000 | [diff] [blame] | 64 | } UUID_VECTOR; |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 65 | #define uuid_vector_t UUID_VECTOR |
| 66 | |
| 67 | typedef struct _RPC_IF_ID |
| 68 | { |
| 69 | UUID Uuid; |
| 70 | unsigned short VersMajor; |
| 71 | unsigned short VersMinor; |
| 72 | } RPC_IF_ID; |
| 73 | |
Mike McCormack | f0c49da | 2006-04-19 17:25:02 +0900 | [diff] [blame] | 74 | typedef struct |
| 75 | { |
| 76 | unsigned long Count; |
| 77 | RPC_IF_ID *IfId[1]; |
| 78 | } RPC_IF_ID_VECTOR; |
| 79 | |
Mike McCormack | a0f8623 | 2006-04-19 17:25:21 +0900 | [diff] [blame] | 80 | typedef I_RPC_HANDLE *RPC_EP_INQ_HANDLE; |
| 81 | |
| 82 | #define RPC_C_EP_ALL_ELTS 0 |
| 83 | #define RPC_C_EP_MATCH_BY_IF 1 |
| 84 | #define RPC_C_EP_MATCH_BY_OBJ 2 |
| 85 | #define RPC_C_EP_MATCH_BY_BOTH 3 |
| 86 | |
| 87 | #define RPC_C_VERS_ALL 1 |
| 88 | #define RPC_C_VERS_COMPATIBLE 2 |
| 89 | #define RPC_C_VERS_EXACT 3 |
| 90 | #define RPC_C_VERS_MAJOR_ONLY 4 |
| 91 | #define RPC_C_VERS_UPTO 5 |
| 92 | |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 93 | #define RPC_C_BINDING_INFINITE_TIMEOUT 10 |
| 94 | #define RPC_C_BINDING_MIN_TIMEOUT 0 |
| 95 | #define RPC_C_BINDING_DEFAULT_TIMEOUT 5 |
| 96 | #define RPC_C_BINDING_MAX_TIMEOUT 9 |
| 97 | |
| 98 | #define RPC_C_CANCEL_INFINITE_TIMEOUT -1 |
| 99 | |
| 100 | #define RPC_C_LISTEN_MAX_CALLS_DEFAULT 1234 |
| 101 | #define RPC_C_PROTSEQ_MAX_REQS_DEFAULT 10 |
| 102 | |
| 103 | /* RPC_POLICY EndpointFlags */ |
| 104 | #define RPC_C_BIND_TO_ALL_NICS 0x1 |
| 105 | #define RPC_C_USE_INTERNET_PORT 0x1 |
| 106 | #define RPC_C_USE_INTRANET_PORT 0x2 |
| 107 | #define RPC_C_DONT_FAIL 0x4 |
| 108 | |
| 109 | /* RPC_POLICY EndpointFlags specific to the Falcon/RPC transport */ |
| 110 | #define RPC_C_MQ_TEMPORARY 0x0000 |
| 111 | #define RPC_C_MQ_PERMANENT 0x0001 |
| 112 | #define RPC_C_MQ_CLEAR_ON_OPEN 0x0002 |
| 113 | #define RPC_C_MQ_USE_EXISTING_SECURITY 0x0004 |
| 114 | #define RPC_C_MQ_AUTHN_LEVEL_NONE 0x0000 |
| 115 | #define RPC_C_MQ_AUTHN_LEVEL_PKT_INTEGRITY 0x0008 |
| 116 | #define RPC_C_MQ_AUTHN_LEVEL_PKT_PRIVACY 0x0010 |
| 117 | |
Mike McCormack | 9b98cb5 | 2006-04-28 13:42:23 +0900 | [diff] [blame^] | 118 | #define RPC_C_AUTHN_LEVEL_DEFAULT 0 |
| 119 | #define RPC_C_AUTHN_LEVEL_NONE 1 |
| 120 | #define RPC_C_AUTHN_LEVEL_CONNECT 2 |
| 121 | #define RPC_C_AUTHN_LEVEL_CALL 3 |
| 122 | #define RPC_C_AUTHN_LEVEL_PKT 4 |
| 123 | #define RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 5 |
| 124 | #define RPC_C_AUTHN_LEVEL_PKT_PRIVACY 6 |
| 125 | |
| 126 | #define RPC_C_AUTHN_NONE 0 |
| 127 | #define RPC_C_AUTHN_DCE_PRIVATE 1 |
| 128 | #define RPC_C_AUTHN_DCE_PUBLIC 2 |
| 129 | #define RPC_C_AUTHN_DEC_PUBLIC 4 |
| 130 | #define RPC_C_AUTHN_GSS_NEGOTIATE 9 |
| 131 | #define RPC_C_AUTHN_WINNT 10 |
| 132 | #define RPC_C_AUTHN_GSS_SCHANNEL 14 |
| 133 | #define RPC_C_AUTHN_GSS_KERBEROS 16 |
| 134 | #define RPC_C_AUTHN_DPA 17 |
| 135 | #define RPC_C_AUTHN_MSN 18 |
| 136 | #define RPC_C_AUTHN_DIGEST 21 |
| 137 | #define RPC_C_AUTHN_MQ 100 |
| 138 | #define RPC_C_AUTHN_DEFAULT 0xffffffff |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 139 | |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 140 | typedef RPC_STATUS RPC_ENTRY RPC_IF_CALLBACK_FN( RPC_IF_HANDLE InterfaceUuid, void *Context ); |
Patrik Stridvall | 395e8ba | 2002-02-05 18:09:29 +0000 | [diff] [blame] | 141 | typedef void (__RPC_USER *RPC_AUTH_KEY_RETRIEVAL_FN)(); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 142 | |
Vincent BĂ©ron | 9a62491 | 2002-05-31 23:06:46 +0000 | [diff] [blame] | 143 | typedef struct _RPC_POLICY |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 144 | { |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 145 | unsigned int Length; |
| 146 | unsigned long EndpointFlags; |
| 147 | unsigned long NICFlags; |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 148 | } RPC_POLICY, *PRPC_POLICY; |
| 149 | |
Kai Blin | 17fa0ff | 2005-08-22 09:16:50 +0000 | [diff] [blame] | 150 | typedef struct _SEC_WINNT_AUTH_IDENTITY_W |
| 151 | { |
| 152 | unsigned short __RPC_FAR* User; |
| 153 | unsigned long UserLength; |
| 154 | unsigned short __RPC_FAR* Domain; |
| 155 | unsigned long DomainLength; |
| 156 | unsigned short __RPC_FAR* Password; |
| 157 | unsigned long PasswordLength; |
| 158 | unsigned long Flags; |
| 159 | } SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W; |
| 160 | |
| 161 | typedef struct _SEC_WINNT_AUTH_IDENTITY_A |
| 162 | { |
| 163 | unsigned char __RPC_FAR* User; |
| 164 | unsigned long UserLength; |
| 165 | unsigned char __RPC_FAR* Domain; |
| 166 | unsigned long DomainLength; |
| 167 | unsigned char __RPC_FAR* Password; |
| 168 | unsigned long PasswordLength; |
| 169 | unsigned long Flags; |
| 170 | } SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A; |
| 171 | |
Mike McCormack | 4e49c38 | 2006-04-26 22:44:07 +0900 | [diff] [blame] | 172 | typedef struct _RPC_SECURITY_QOS { |
| 173 | unsigned long Version; |
| 174 | unsigned long Capabilities; |
| 175 | unsigned long IdentityTracking; |
| 176 | unsigned long ImpersonationType; |
| 177 | } RPC_SECURITY_QOS, *PRPC_SECURITY_QOS; |
| 178 | |
Kai Blin | 17fa0ff | 2005-08-22 09:16:50 +0000 | [diff] [blame] | 179 | #define _SEC_WINNT_AUTH_IDENTITY WINELIB_NAME_AW(_SEC_WINNT_AUTH_IDENTITY_) |
| 180 | #define SEC_WINNT_AUTH_IDENTITY WINELIB_NAME_AW(SEC_WINNT_AUTH_IDENTITY_) |
| 181 | #define PSEC_WINNT_AUTH_IDENTITY WINELIB_NAME_AW(PSEC_WINNT_AUTH_IDENTITY_) |
| 182 | |
| 183 | /* SEC_WINNT_AUTH Flags */ |
| 184 | #define SEC_WINNT_AUTH_IDENTITY_ANSI 0x1 |
| 185 | #define SEC_WINNT_AUTH_IDENTITY_UNICODE 0x2 |
| 186 | |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 187 | /* RpcServerRegisterIfEx Flags */ |
| 188 | #define RPC_IF_AUTOLISTEN 0x1 |
| 189 | #define RPC_IF_OLE 0x2 |
| 190 | #define RPC_IF_ALLOW_UNKNOWN_AUTHORITY 0x4 |
| 191 | #define RPC_IF_ALLOW_SECURE_ONLY 0x8 |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 192 | |
Ge van Geldorp | 7cf104a | 2005-01-14 15:11:40 +0000 | [diff] [blame] | 193 | RPC_STATUS RPC_ENTRY DceErrorInqTextA(RPC_STATUS e, unsigned char *buffer); |
| 194 | RPC_STATUS RPC_ENTRY DceErrorInqTextW(RPC_STATUS e, unsigned short *buffer); |
Bill Medland | bf42021 | 2004-12-23 11:29:54 +0000 | [diff] [blame] | 195 | #define DceErrorInqText WINELIB_NAME_AW(DceErrorInqText) |
| 196 | |
Ove Kaaven | 882fc03 | 2003-01-31 03:21:11 +0000 | [diff] [blame] | 197 | RPCRTAPI void RPC_ENTRY |
| 198 | RpcRaiseException( RPC_STATUS exception ); |
| 199 | |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 200 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 201 | RpcBindingCopy( RPC_BINDING_HANDLE SourceBinding, RPC_BINDING_HANDLE* DestinationBinding ); |
| 202 | |
| 203 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Patrik Stridvall | 5038c04 | 2002-01-31 21:47:34 +0000 | [diff] [blame] | 204 | RpcBindingFree( RPC_BINDING_HANDLE* Binding ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 205 | |
| 206 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 207 | RpcBindingInqObject( RPC_BINDING_HANDLE Binding, UUID* ObjectUuid ); |
| 208 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 209 | RpcBindingReset( RPC_BINDING_HANDLE Binding ); |
| 210 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 211 | RpcBindingSetObject( RPC_BINDING_HANDLE Binding, UUID* ObjectUuid ); |
Gregory M. Turner | add18f7 | 2003-11-21 22:14:42 +0000 | [diff] [blame] | 212 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 213 | RpcObjectSetType( UUID* ObjUuid, UUID* TypeUuid ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 214 | |
| 215 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Filip Navara | 7930ada | 2004-04-19 23:03:58 +0000 | [diff] [blame] | 216 | RpcBindingFromStringBindingA( unsigned char *StringBinding, RPC_BINDING_HANDLE* Binding ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 217 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 218 | RpcBindingFromStringBindingW( unsigned short *StringBinding, RPC_BINDING_HANDLE* Binding ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 219 | #define RpcBindingFromStringBinding WINELIB_NAME_AW(RpcBindingFromStringBinding) |
| 220 | |
| 221 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Filip Navara | 7930ada | 2004-04-19 23:03:58 +0000 | [diff] [blame] | 222 | RpcBindingToStringBindingA( RPC_BINDING_HANDLE Binding, unsigned char **StringBinding ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 223 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 224 | RpcBindingToStringBindingW( RPC_BINDING_HANDLE Binding, unsigned short **StringBinding ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 225 | #define RpcBindingFromStringBinding WINELIB_NAME_AW(RpcBindingFromStringBinding) |
| 226 | |
| 227 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 228 | RpcBindingVectorFree( RPC_BINDING_VECTOR** BindingVector ); |
| 229 | |
| 230 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Filip Navara | 7930ada | 2004-04-19 23:03:58 +0000 | [diff] [blame] | 231 | RpcStringBindingComposeA( unsigned char *ObjUuid, unsigned char *Protseq, unsigned char *NetworkAddr, |
| 232 | unsigned char *Endpoint, unsigned char *Options, unsigned char **StringBinding ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 233 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 234 | RpcStringBindingComposeW( unsigned short *ObjUuid, unsigned short *Protseq, unsigned short *NetworkAddr, |
| 235 | unsigned short *Endpoint, unsigned short *Options, unsigned short **StringBinding ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 236 | #define RpcStringBindingCompose WINELIB_NAME_AW(RpcStringBindingCompose) |
| 237 | |
| 238 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Filip Navara | 7930ada | 2004-04-19 23:03:58 +0000 | [diff] [blame] | 239 | RpcStringBindingParseA( unsigned char *StringBinding, unsigned char **ObjUuid, unsigned char **Protseq, |
| 240 | unsigned char **NetworkAddr, unsigned char **Endpoint, unsigned char **NetworkOptions ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 241 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 242 | RpcStringBindingParseW( unsigned short *StringBinding, unsigned short **ObjUuid, unsigned short **Protseq, |
| 243 | unsigned short **NetworkAddr, unsigned short **Endpoint, unsigned short **NetworkOptions ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 244 | #define RpcStringBindingParse WINELIB_NAME_AW(RpcStringBindingParse) |
| 245 | |
| 246 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 247 | RpcEpResolveBinding( RPC_BINDING_HANDLE Binding, RPC_IF_HANDLE IfSpec ); |
| 248 | |
| 249 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Francois Gouget | 02236f0 | 2004-09-08 01:27:24 +0000 | [diff] [blame] | 250 | RpcEpRegisterA( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, |
| 251 | UUID_VECTOR* UuidVector, unsigned char *Annotation ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 252 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Francois Gouget | 02236f0 | 2004-09-08 01:27:24 +0000 | [diff] [blame] | 253 | RpcEpRegisterW( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, |
| 254 | UUID_VECTOR* UuidVector, unsigned short *Annotation ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 255 | #define RpcEpRegister WINELIB_NAME_AW(RpcEpRegister) |
| 256 | |
| 257 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 258 | RpcEpRegisterNoReplaceA( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, |
Filip Navara | 7930ada | 2004-04-19 23:03:58 +0000 | [diff] [blame] | 259 | UUID_VECTOR* UuidVector, unsigned char *Annotation ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 260 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 261 | RpcEpRegisterNoReplaceW( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 262 | UUID_VECTOR* UuidVector, unsigned short *Annotation ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 263 | #define RpcEpRegisterNoReplace WINELIB_NAME_AW(RpcEpRegisterNoReplace) |
| 264 | |
| 265 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 266 | RpcEpUnregister( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, |
| 267 | UUID_VECTOR* UuidVector ); |
| 268 | |
| 269 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 270 | RpcServerInqBindings( RPC_BINDING_VECTOR** BindingVector ); |
| 271 | |
| 272 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 273 | RpcServerListen( unsigned int MinimumCallThreads, unsigned int MaxCalls, unsigned int DontWait ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 274 | |
| 275 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Greg Turner | 034e4df | 2002-10-18 03:56:56 +0000 | [diff] [blame] | 276 | RpcMgmtWaitServerListen( void ); |
| 277 | |
| 278 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Greg Turner | 3eafbfc | 2002-10-31 22:45:12 +0000 | [diff] [blame] | 279 | RpcMgmtStopServerListening( RPC_BINDING_HANDLE Binding ); |
| 280 | |
| 281 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | f0c49da | 2006-04-19 17:25:02 +0900 | [diff] [blame] | 282 | RpcMgmtInqIfIds( RPC_BINDING_HANDLE Binding, RPC_IF_ID_VECTOR** IfIdVector ); |
| 283 | |
| 284 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | a0f8623 | 2006-04-19 17:25:21 +0900 | [diff] [blame] | 285 | RpcMgmtEpEltInqBegin( RPC_BINDING_HANDLE EpBinding, unsigned long InquiryType, RPC_IF_ID *IfId, |
| 286 | unsigned long VersOption, UUID *ObjectUuid, RPC_EP_INQ_HANDLE *InquiryContext); |
| 287 | |
| 288 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 289 | RpcServerRegisterIf( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv ); |
Vincent BĂ©ron | 9a62491 | 2002-05-31 23:06:46 +0000 | [diff] [blame] | 290 | |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 291 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 292 | RpcServerRegisterIfEx( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv, |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 293 | unsigned int Flags, unsigned int MaxCalls, RPC_IF_CALLBACK_FN* IfCallbackFn ); |
Vincent BĂ©ron | 9a62491 | 2002-05-31 23:06:46 +0000 | [diff] [blame] | 294 | |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 295 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 296 | RpcServerRegisterIf2( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv, |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 297 | unsigned int Flags, unsigned int MaxCalls, unsigned int MaxRpcSize, RPC_IF_CALLBACK_FN* IfCallbackFn ); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 298 | |
Greg Turner | 3eafbfc | 2002-10-31 22:45:12 +0000 | [diff] [blame] | 299 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 300 | RpcServerUnregisterIf( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, unsigned int WaitForCallsToComplete ); |
Greg Turner | 3eafbfc | 2002-10-31 22:45:12 +0000 | [diff] [blame] | 301 | |
| 302 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 303 | RpcServerUnregisterIfEx( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, int RundownContextHandles ); |
| 304 | |
Greg Turner | b71535e | 2002-10-21 23:41:35 +0000 | [diff] [blame] | 305 | |
| 306 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Filip Navara | 7930ada | 2004-04-19 23:03:58 +0000 | [diff] [blame] | 307 | RpcServerUseProtseqA(unsigned char *Protseq, unsigned int MaxCalls, void *SecurityDescriptor); |
Greg Turner | b71535e | 2002-10-21 23:41:35 +0000 | [diff] [blame] | 308 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 309 | RpcServerUseProtseqW(unsigned short *Protseq, unsigned int MaxCalls, void *SecurityDescriptor); |
Greg Turner | b71535e | 2002-10-21 23:41:35 +0000 | [diff] [blame] | 310 | #define RpcServerUseProtseq WINELIB_NAME_AW(RpcServerUseProtseq) |
| 311 | |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 312 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 313 | RpcServerUseProtseqEpA( unsigned char *Protseq, unsigned int MaxCalls, unsigned char *Endpoint, void *SecurityDescriptor ); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 314 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 315 | RpcServerUseProtseqEpW( unsigned short *Protseq, unsigned int MaxCalls, unsigned short *Endpoint, void *SecurityDescriptor ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 316 | #define RpcServerUseProtseqEp WINELIB_NAME_AW(RpcServerUseProtseqEp) |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 317 | |
| 318 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 319 | RpcServerUseProtseqEpExA( unsigned char *Protseq, unsigned int MaxCalls, unsigned char *Endpoint, void *SecurityDescriptor, |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 320 | PRPC_POLICY Policy ); |
| 321 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 322 | RpcServerUseProtseqEpExW( unsigned short *Protseq, unsigned int MaxCalls, unsigned short *Endpoint, void *SecurityDescriptor, |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 323 | PRPC_POLICY Policy ); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 324 | #define RpcServerUseProtseqEpEx WINELIB_NAME_AW(RpcServerUseProtseqEpEx) |
| 325 | |
| 326 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 327 | RpcServerRegisterAuthInfoA( unsigned char *ServerPrincName, unsigned long AuthnSvc, RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn, |
| 328 | void *Arg ); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 329 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 330 | RpcServerRegisterAuthInfoW( unsigned short *ServerPrincName, unsigned long AuthnSvc, RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn, |
| 331 | void *Arg ); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 332 | #define RpcServerRegisterAuthInfo WINELIB_NAME_AW(RpcServerRegisterAuthInfo) |
| 333 | |
| 334 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | 4e49c38 | 2006-04-26 22:44:07 +0900 | [diff] [blame] | 335 | RpcBindingSetAuthInfoExA( RPC_BINDING_HANDLE Binding, unsigned char *ServerPrincName, unsigned long AuthnLevel, |
| 336 | unsigned long AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, unsigned long AuthzSvr, |
| 337 | RPC_SECURITY_QOS *SecurityQos ); |
| 338 | |
| 339 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 340 | RpcBindingSetAuthInfoExW( RPC_BINDING_HANDLE Binding, unsigned short *ServerPrincName, unsigned long AuthnLevel, |
| 341 | unsigned long AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, unsigned long AuthzSvr, |
| 342 | RPC_SECURITY_QOS *SecurityQos ); |
| 343 | #define RpcBindingSetAuthInfoEx WINELIB_NAME_AW(RpcBindingSetAuthInfoEx) |
| 344 | |
| 345 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 346 | RpcBindingSetAuthInfoA( RPC_BINDING_HANDLE Binding, unsigned char *ServerPrincName, unsigned long AuthnLevel, |
| 347 | unsigned long AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, unsigned long AuthzSvr ); |
| 348 | |
| 349 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 350 | RpcBindingSetAuthInfoW( RPC_BINDING_HANDLE Binding, unsigned short *ServerPrincName, unsigned long AuthnLevel, |
| 351 | unsigned long AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, unsigned long AuthzSvr ); |
| 352 | #define RpcBindingSetAuthInfo WINELIB_NAME_AW(RpcBindingSetAuthInfo) |
| 353 | |
| 354 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 355 | RpcBindingInqAuthInfoExA( RPC_BINDING_HANDLE Binding, unsigned char ** ServerPrincName, unsigned long *AuthnLevel, |
| 356 | unsigned long *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, unsigned long *AuthzSvc, |
| 357 | unsigned long RpcQosVersion, RPC_SECURITY_QOS *SecurityQOS ); |
| 358 | |
| 359 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 360 | RpcBindingInqAuthInfoExW( RPC_BINDING_HANDLE Binding, unsigned short ** ServerPrincName, unsigned long *AuthnLevel, |
| 361 | unsigned long *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, unsigned long *AuthzSvc, |
| 362 | unsigned long RpcQosVersion, RPC_SECURITY_QOS *SecurityQOS ); |
| 363 | #define RpcBindingInqAuthInfoEx WINELIB_NAME_AW(RpcBindingInqAuthInfoEx) |
| 364 | |
| 365 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 366 | RpcBindingInqAuthInfoA( RPC_BINDING_HANDLE Binding, unsigned char ** ServerPrincName, unsigned long *AuthnLevel, |
| 367 | unsigned long *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, unsigned long *AuthzSvc ); |
| 368 | |
| 369 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 370 | RpcBindingInqAuthInfoW( RPC_BINDING_HANDLE Binding, unsigned short ** ServerPrincName, unsigned long *AuthnLevel, |
| 371 | unsigned long *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, unsigned long *AuthzSvc ); |
| 372 | #define RpcBindingInqAuthInfo WINELIB_NAME_AW(RpcBindingInqAuthInfo) |
| 373 | |
| 374 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Filip Navara | 2493529 | 2004-04-14 04:28:27 +0000 | [diff] [blame] | 375 | RpcNetworkIsProtseqValidA( unsigned char *protseq ); |
Mike Hearn | eca464b | 2004-01-20 23:36:50 +0000 | [diff] [blame] | 376 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Mike McCormack | cdf631f | 2004-09-02 20:09:10 +0000 | [diff] [blame] | 377 | RpcNetworkIsProtseqValidW( unsigned short *protseq ); |
Filip Navara | 2493529 | 2004-04-14 04:28:27 +0000 | [diff] [blame] | 378 | #define RpcNetworkIsProtseqValid WINELIB_NAME_AW(RpcNetworkIsProtseqValid) |
Mike Hearn | eca464b | 2004-01-20 23:36:50 +0000 | [diff] [blame] | 379 | |
| 380 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Dimitrie O. Paun | 48be9c6 | 2002-12-24 00:26:55 +0000 | [diff] [blame] | 381 | RpcStringFreeA(unsigned char** String); |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 382 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Dimitrie O. Paun | 48be9c6 | 2002-12-24 00:26:55 +0000 | [diff] [blame] | 383 | RpcStringFreeW(unsigned short** String); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 384 | #define RpcStringFree WINELIB_NAME_AW(RpcStringFree) |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 385 | |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 386 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Dimitrie O. Paun | 48be9c6 | 2002-12-24 00:26:55 +0000 | [diff] [blame] | 387 | UuidToStringA( UUID* Uuid, unsigned char** StringUuid ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 388 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Dimitrie O. Paun | 48be9c6 | 2002-12-24 00:26:55 +0000 | [diff] [blame] | 389 | UuidToStringW( UUID* Uuid, unsigned short** StringUuid ); |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 390 | #define UuidToString WINELIB_NAME_AW(UuidToString) |
Peter Hunnisett | 8cec3cff | 2001-07-11 20:19:06 +0000 | [diff] [blame] | 391 | |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 392 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Dimitrie O. Paun | 48be9c6 | 2002-12-24 00:26:55 +0000 | [diff] [blame] | 393 | UuidFromStringA( unsigned char* StringUuid, UUID* Uuid ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 394 | RPCRTAPI RPC_STATUS RPC_ENTRY |
Dimitrie O. Paun | 48be9c6 | 2002-12-24 00:26:55 +0000 | [diff] [blame] | 395 | UuidFromStringW( unsigned short* StringUuid, UUID* Uuid ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 396 | #define UuidFromString WINELIB_NAME_AW(UuidFromString) |
| 397 | |
| 398 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 399 | UuidCreate( UUID* Uuid ); |
| 400 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 401 | UuidCreateSequential( UUID* Uuid ); |
| 402 | RPCRTAPI RPC_STATUS RPC_ENTRY |
| 403 | UuidCreateNil( UUID* Uuid ); |
| 404 | RPCRTAPI signed int RPC_ENTRY |
| 405 | UuidCompare( UUID* Uuid1, UUID* Uuid2, RPC_STATUS* Status_ ); |
| 406 | RPCRTAPI int RPC_ENTRY |
| 407 | UuidEqual( UUID* Uuid1, UUID* Uuid2, RPC_STATUS* Status_ ); |
Huw D M Davies | 2356fbc | 2001-09-07 15:25:51 +0000 | [diff] [blame] | 408 | RPCRTAPI unsigned short RPC_ENTRY |
Ove Kaaven | 0dac972 | 2001-10-14 16:15:37 +0000 | [diff] [blame] | 409 | UuidHash(UUID* Uuid, RPC_STATUS* Status_ ); |
Ove Kaaven | 29b3061 | 2002-08-09 01:11:39 +0000 | [diff] [blame] | 410 | RPCRTAPI int RPC_ENTRY |
| 411 | UuidIsNil( UUID* Uuid, RPC_STATUS* Status_ ); |
Huw D M Davies | 2356fbc | 2001-09-07 15:25:51 +0000 | [diff] [blame] | 412 | |
Peter Lemenkov | 66f839d | 2005-11-14 11:20:30 +0000 | [diff] [blame] | 413 | #ifdef __cplusplus |
| 414 | } |
| 415 | #endif |
| 416 | |
Dimitrie O. Paun | 53f9c21 | 2003-08-28 21:43:34 +0000 | [diff] [blame] | 417 | #include <rpcdcep.h> |
Francois Gouget | 552fddc | 2000-11-08 05:06:10 +0000 | [diff] [blame] | 418 | |
| 419 | #endif /*__WINE_RPCDCE_H */ |