1*c2c66affSColin Finck /* 2*c2c66affSColin Finck * Copyright (C) 2000 Francois Gouget 3*c2c66affSColin Finck * 4*c2c66affSColin Finck * This library is free software; you can redistribute it and/or 5*c2c66affSColin Finck * modify it under the terms of the GNU Lesser General Public 6*c2c66affSColin Finck * License as published by the Free Software Foundation; either 7*c2c66affSColin Finck * version 2.1 of the License, or (at your option) any later version. 8*c2c66affSColin Finck * 9*c2c66affSColin Finck * This library is distributed in the hope that it will be useful, 10*c2c66affSColin Finck * but WITHOUT ANY WARRANTY; without even the implied warranty of 11*c2c66affSColin Finck * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12*c2c66affSColin Finck * Lesser General Public License for more details. 13*c2c66affSColin Finck * 14*c2c66affSColin Finck * You should have received a copy of the GNU Lesser General Public 15*c2c66affSColin Finck * License along with this library; if not, write to the Free Software 16*c2c66affSColin Finck * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 17*c2c66affSColin Finck */ 18*c2c66affSColin Finck 19*c2c66affSColin Finck #ifndef __WINE_RPCDCE_H 20*c2c66affSColin Finck #define __WINE_RPCDCE_H 21*c2c66affSColin Finck 22*c2c66affSColin Finck #ifdef __cplusplus 23*c2c66affSColin Finck extern "C" { 24*c2c66affSColin Finck #endif 25*c2c66affSColin Finck 26*c2c66affSColin Finck #ifndef IN 27*c2c66affSColin Finck #define IN 28*c2c66affSColin Finck #endif 29*c2c66affSColin Finck #ifndef OUT 30*c2c66affSColin Finck #define OUT 31*c2c66affSColin Finck #endif 32*c2c66affSColin Finck #ifndef OPTIONAL 33*c2c66affSColin Finck #define OPTIONAL 34*c2c66affSColin Finck #endif 35*c2c66affSColin Finck 36*c2c66affSColin Finck #ifndef GUID_DEFINED 37*c2c66affSColin Finck #include <guiddef.h> 38*c2c66affSColin Finck #endif 39*c2c66affSColin Finck 40*c2c66affSColin Finck #ifndef UUID_DEFINED 41*c2c66affSColin Finck #define UUID_DEFINED 42*c2c66affSColin Finck typedef GUID UUID; 43*c2c66affSColin Finck #endif 44*c2c66affSColin Finck 45*c2c66affSColin Finck typedef unsigned char* RPC_CSTR; 46*c2c66affSColin Finck typedef unsigned short* RPC_WSTR; 47*c2c66affSColin Finck typedef void* RPC_AUTH_IDENTITY_HANDLE; 48*c2c66affSColin Finck typedef void* RPC_AUTHZ_HANDLE; 49*c2c66affSColin Finck typedef void* RPC_IF_HANDLE; 50*c2c66affSColin Finck typedef I_RPC_HANDLE RPC_BINDING_HANDLE; 51*c2c66affSColin Finck typedef RPC_BINDING_HANDLE handle_t; 52*c2c66affSColin Finck #define rpc_binding_handle_t RPC_BINDING_HANDLE 53*c2c66affSColin Finck #define RPC_MGR_EPV void 54*c2c66affSColin Finck 55*c2c66affSColin Finck typedef struct _RPC_BINDING_VECTOR 56*c2c66affSColin Finck { 57*c2c66affSColin Finck ULONG Count; 58*c2c66affSColin Finck RPC_BINDING_HANDLE BindingH[1]; 59*c2c66affSColin Finck } RPC_BINDING_VECTOR; 60*c2c66affSColin Finck #define rpc_binding_vector_t RPC_BINDING_VECTOR 61*c2c66affSColin Finck 62*c2c66affSColin Finck typedef struct _UUID_VECTOR 63*c2c66affSColin Finck { 64*c2c66affSColin Finck ULONG Count; 65*c2c66affSColin Finck UUID *Uuid[1]; 66*c2c66affSColin Finck } UUID_VECTOR; 67*c2c66affSColin Finck #define uuid_vector_t UUID_VECTOR 68*c2c66affSColin Finck 69*c2c66affSColin Finck typedef struct _RPC_IF_ID 70*c2c66affSColin Finck { 71*c2c66affSColin Finck UUID Uuid; 72*c2c66affSColin Finck unsigned short VersMajor; 73*c2c66affSColin Finck unsigned short VersMinor; 74*c2c66affSColin Finck } RPC_IF_ID; 75*c2c66affSColin Finck 76*c2c66affSColin Finck typedef struct 77*c2c66affSColin Finck { 78*c2c66affSColin Finck ULONG Count; 79*c2c66affSColin Finck RPC_IF_ID *IfId[1]; 80*c2c66affSColin Finck } RPC_IF_ID_VECTOR; 81*c2c66affSColin Finck 82*c2c66affSColin Finck typedef struct 83*c2c66affSColin Finck { 84*c2c66affSColin Finck unsigned int Count; 85*c2c66affSColin Finck ULONG Stats[1]; 86*c2c66affSColin Finck } RPC_STATS_VECTOR; 87*c2c66affSColin Finck 88*c2c66affSColin Finck typedef struct _RPC_PROTSEQ_VECTORA 89*c2c66affSColin Finck { 90*c2c66affSColin Finck unsigned int Count; 91*c2c66affSColin Finck unsigned char *Protseq[1]; 92*c2c66affSColin Finck } RPC_PROTSEQ_VECTORA; 93*c2c66affSColin Finck 94*c2c66affSColin Finck typedef struct _RPC_PROTSEQ_VECTORW 95*c2c66affSColin Finck { 96*c2c66affSColin Finck unsigned int Count; 97*c2c66affSColin Finck unsigned short *Protseq[1]; 98*c2c66affSColin Finck } RPC_PROTSEQ_VECTORW; 99*c2c66affSColin Finck 100*c2c66affSColin Finck DECL_WINELIB_TYPE_AW(RPC_PROTSEQ_VECTOR) 101*c2c66affSColin Finck 102*c2c66affSColin Finck typedef I_RPC_HANDLE *RPC_EP_INQ_HANDLE; 103*c2c66affSColin Finck 104*c2c66affSColin Finck #define RPC_C_EP_ALL_ELTS 0 105*c2c66affSColin Finck #define RPC_C_EP_MATCH_BY_IF 1 106*c2c66affSColin Finck #define RPC_C_EP_MATCH_BY_OBJ 2 107*c2c66affSColin Finck #define RPC_C_EP_MATCH_BY_BOTH 3 108*c2c66affSColin Finck 109*c2c66affSColin Finck #define RPC_C_VERS_ALL 1 110*c2c66affSColin Finck #define RPC_C_VERS_COMPATIBLE 2 111*c2c66affSColin Finck #define RPC_C_VERS_EXACT 3 112*c2c66affSColin Finck #define RPC_C_VERS_MAJOR_ONLY 4 113*c2c66affSColin Finck #define RPC_C_VERS_UPTO 5 114*c2c66affSColin Finck 115*c2c66affSColin Finck #define RPC_C_BINDING_INFINITE_TIMEOUT 10 116*c2c66affSColin Finck #define RPC_C_BINDING_MIN_TIMEOUT 0 117*c2c66affSColin Finck #define RPC_C_BINDING_DEFAULT_TIMEOUT 5 118*c2c66affSColin Finck #define RPC_C_BINDING_MAX_TIMEOUT 9 119*c2c66affSColin Finck 120*c2c66affSColin Finck #define RPC_C_CANCEL_INFINITE_TIMEOUT -1 121*c2c66affSColin Finck 122*c2c66affSColin Finck #define RPC_C_LISTEN_MAX_CALLS_DEFAULT 1234 123*c2c66affSColin Finck #define RPC_C_PROTSEQ_MAX_REQS_DEFAULT 10 124*c2c66affSColin Finck 125*c2c66affSColin Finck #define RPC_PROTSEQ_TCP 0x1 126*c2c66affSColin Finck #define RPC_PROTSEQ_NMP 0x2 127*c2c66affSColin Finck #define RPC_PROTSEQ_LRPC 0x3 128*c2c66affSColin Finck #define RPC_PROTSEQ_HTTP 0x4 129*c2c66affSColin Finck 130*c2c66affSColin Finck /* RPC_POLICY EndpointFlags */ 131*c2c66affSColin Finck #define RPC_C_BIND_TO_ALL_NICS 0x1 132*c2c66affSColin Finck #define RPC_C_USE_INTERNET_PORT 0x1 133*c2c66affSColin Finck #define RPC_C_USE_INTRANET_PORT 0x2 134*c2c66affSColin Finck #define RPC_C_DONT_FAIL 0x4 135*c2c66affSColin Finck 136*c2c66affSColin Finck /* RPC_POLICY EndpointFlags specific to the Falcon/RPC transport */ 137*c2c66affSColin Finck #define RPC_C_MQ_TEMPORARY 0x0000 138*c2c66affSColin Finck #define RPC_C_MQ_PERMANENT 0x0001 139*c2c66affSColin Finck #define RPC_C_MQ_CLEAR_ON_OPEN 0x0002 140*c2c66affSColin Finck #define RPC_C_MQ_USE_EXISTING_SECURITY 0x0004 141*c2c66affSColin Finck #define RPC_C_MQ_AUTHN_LEVEL_NONE 0x0000 142*c2c66affSColin Finck #define RPC_C_MQ_AUTHN_LEVEL_PKT_INTEGRITY 0x0008 143*c2c66affSColin Finck #define RPC_C_MQ_AUTHN_LEVEL_PKT_PRIVACY 0x0010 144*c2c66affSColin Finck 145*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_DEFAULT 0 146*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_NONE 1 147*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_CONNECT 2 148*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_CALL 3 149*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_PKT 4 150*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 5 151*c2c66affSColin Finck #define RPC_C_AUTHN_LEVEL_PKT_PRIVACY 6 152*c2c66affSColin Finck 153*c2c66affSColin Finck #define RPC_C_AUTHN_NONE 0 154*c2c66affSColin Finck #define RPC_C_AUTHN_DCE_PRIVATE 1 155*c2c66affSColin Finck #define RPC_C_AUTHN_DCE_PUBLIC 2 156*c2c66affSColin Finck #define RPC_C_AUTHN_DEC_PUBLIC 4 157*c2c66affSColin Finck #define RPC_C_AUTHN_GSS_NEGOTIATE 9 158*c2c66affSColin Finck #define RPC_C_AUTHN_WINNT 10 159*c2c66affSColin Finck #define RPC_C_AUTHN_GSS_SCHANNEL 14 160*c2c66affSColin Finck #define RPC_C_AUTHN_GSS_KERBEROS 16 161*c2c66affSColin Finck #define RPC_C_AUTHN_DPA 17 162*c2c66affSColin Finck #define RPC_C_AUTHN_MSN 18 163*c2c66affSColin Finck #define RPC_C_AUTHN_DIGEST 21 164*c2c66affSColin Finck #define RPC_C_AUTHN_MQ 100 165*c2c66affSColin Finck #define RPC_C_AUTHN_DEFAULT 0xffffffff 166*c2c66affSColin Finck 167*c2c66affSColin Finck #define RPC_C_AUTHZ_NONE 0 168*c2c66affSColin Finck #define RPC_C_AUTHZ_NAME 1 169*c2c66affSColin Finck #define RPC_C_AUTHZ_DCE 2 170*c2c66affSColin Finck #define RPC_C_AUTHZ_DEFAULT 0xffffffff 171*c2c66affSColin Finck 172*c2c66affSColin Finck /* values for RPC_SECURITY_QOS*::ImpersonationType */ 173*c2c66affSColin Finck #define RPC_C_IMP_LEVEL_DEFAULT 0 174*c2c66affSColin Finck #define RPC_C_IMP_LEVEL_ANONYMOUS 1 175*c2c66affSColin Finck #define RPC_C_IMP_LEVEL_IDENTIFY 2 176*c2c66affSColin Finck #define RPC_C_IMP_LEVEL_IMPERSONATE 3 177*c2c66affSColin Finck #define RPC_C_IMP_LEVEL_DELEGATE 4 178*c2c66affSColin Finck 179*c2c66affSColin Finck /* values for RPC_SECURITY_QOS*::IdentityTracking */ 180*c2c66affSColin Finck #define RPC_C_QOS_IDENTITY_STATIC 0 181*c2c66affSColin Finck #define RPC_C_QOS_IDENTITY_DYNAMIC 1 182*c2c66affSColin Finck 183*c2c66affSColin Finck /* flags for RPC_SECURITY_QOS*::Capabilities */ 184*c2c66affSColin Finck #define RPC_C_QOS_CAPABILITIES_DEFAULT 0x0 185*c2c66affSColin Finck #define RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH 0x1 186*c2c66affSColin Finck #define RPC_C_QOS_CAPABILITIES_MAKE_FULLSIC 0x2 187*c2c66affSColin Finck #define RPC_C_QOS_CAPABILITIES_ANY_AUTHORITY 0x4 188*c2c66affSColin Finck 189*c2c66affSColin Finck /* values for RPC_SECURITY_QOS*::Version */ 190*c2c66affSColin Finck #define RPC_C_SECURITY_QOS_VERSION 1 191*c2c66affSColin Finck #define RPC_C_SECURITY_QOS_VERSION_1 1 192*c2c66affSColin Finck #define RPC_C_SECURITY_QOS_VERSION_2 2 193*c2c66affSColin Finck 194*c2c66affSColin Finck /* flags for RPC_SECURITY_QOS_V2::AdditionalSecurityInfoType */ 195*c2c66affSColin Finck #define RPC_C_AUTHN_INFO_TYPE_HTTP 1 196*c2c66affSColin Finck 197*c2c66affSColin Finck /* flags for RPC_HTTP_TRANSPORT_CREDENTIALS::Flags */ 198*c2c66affSColin Finck #define RPC_C_HTTP_FLAG_USE_SSL 0x1 199*c2c66affSColin Finck #define RPC_C_HTTP_FLAG_USE_FIRST_AUTH_SCHEME 0x2 200*c2c66affSColin Finck 201*c2c66affSColin Finck /* values for RPC_HTTP_TRANSPORT_CREDENTIALS::AuthenticationTarget */ 202*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_TARGET_SERVER 1 203*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_TARGET_PROXY 2 204*c2c66affSColin Finck 205*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_SCHEME_BASIC 0x01 206*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_SCHEME_NTLM 0x02 207*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_SCHEME_PASSPORT 0x04 208*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_SCHEME_DIGEST 0x08 209*c2c66affSColin Finck #define RPC_C_HTTP_AUTHN_SCHEME_NEGOTIATE 0x10 210*c2c66affSColin Finck 211*c2c66affSColin Finck typedef RPC_STATUS RPC_ENTRY RPC_IF_CALLBACK_FN( RPC_IF_HANDLE InterfaceUuid, void *Context ); 212*c2c66affSColin Finck typedef void (__RPC_USER *RPC_AUTH_KEY_RETRIEVAL_FN)(void *, RPC_WSTR, ULONG, void **, RPC_STATUS *); 213*c2c66affSColin Finck 214*c2c66affSColin Finck typedef struct _RPC_POLICY 215*c2c66affSColin Finck { 216*c2c66affSColin Finck unsigned int Length; 217*c2c66affSColin Finck ULONG EndpointFlags; 218*c2c66affSColin Finck ULONG NICFlags; 219*c2c66affSColin Finck } RPC_POLICY, *PRPC_POLICY; 220*c2c66affSColin Finck 221*c2c66affSColin Finck typedef struct _SEC_WINNT_AUTH_IDENTITY_W 222*c2c66affSColin Finck { 223*c2c66affSColin Finck unsigned short* User; 224*c2c66affSColin Finck ULONG UserLength; 225*c2c66affSColin Finck unsigned short* Domain; 226*c2c66affSColin Finck ULONG DomainLength; 227*c2c66affSColin Finck unsigned short* Password; 228*c2c66affSColin Finck ULONG PasswordLength; 229*c2c66affSColin Finck ULONG Flags; 230*c2c66affSColin Finck } SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W; 231*c2c66affSColin Finck 232*c2c66affSColin Finck typedef struct _SEC_WINNT_AUTH_IDENTITY_A 233*c2c66affSColin Finck { 234*c2c66affSColin Finck unsigned char* User; 235*c2c66affSColin Finck ULONG UserLength; 236*c2c66affSColin Finck unsigned char* Domain; 237*c2c66affSColin Finck ULONG DomainLength; 238*c2c66affSColin Finck unsigned char* Password; 239*c2c66affSColin Finck ULONG PasswordLength; 240*c2c66affSColin Finck ULONG Flags; 241*c2c66affSColin Finck } SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A; 242*c2c66affSColin Finck 243*c2c66affSColin Finck typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_W 244*c2c66affSColin Finck { 245*c2c66affSColin Finck SEC_WINNT_AUTH_IDENTITY_W *TransportCredentials; 246*c2c66affSColin Finck ULONG Flags; 247*c2c66affSColin Finck ULONG AuthenticationTarget; 248*c2c66affSColin Finck ULONG NumberOfAuthnSchemes; 249*c2c66affSColin Finck ULONG *AuthnSchemes; 250*c2c66affSColin Finck unsigned short *ServerCertificateSubject; 251*c2c66affSColin Finck } RPC_HTTP_TRANSPORT_CREDENTIALS_W, *PRPC_HTTP_TRANSPORT_CREDENTIALS_W; 252*c2c66affSColin Finck 253*c2c66affSColin Finck typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A 254*c2c66affSColin Finck { 255*c2c66affSColin Finck SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials; 256*c2c66affSColin Finck ULONG Flags; 257*c2c66affSColin Finck ULONG AuthenticationTarget; 258*c2c66affSColin Finck ULONG NumberOfAuthnSchemes; 259*c2c66affSColin Finck ULONG *AuthnSchemes; 260*c2c66affSColin Finck unsigned char *ServerCertificateSubject; 261*c2c66affSColin Finck } RPC_HTTP_TRANSPORT_CREDENTIALS_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_A; 262*c2c66affSColin Finck 263*c2c66affSColin Finck typedef struct _RPC_SECURITY_QOS { 264*c2c66affSColin Finck ULONG Version; 265*c2c66affSColin Finck ULONG Capabilities; 266*c2c66affSColin Finck ULONG IdentityTracking; 267*c2c66affSColin Finck ULONG ImpersonationType; 268*c2c66affSColin Finck } RPC_SECURITY_QOS, *PRPC_SECURITY_QOS; 269*c2c66affSColin Finck 270*c2c66affSColin Finck typedef struct _RPC_SECURITY_QOS_V2_W 271*c2c66affSColin Finck { 272*c2c66affSColin Finck ULONG Version; 273*c2c66affSColin Finck ULONG Capabilities; 274*c2c66affSColin Finck ULONG IdentityTracking; 275*c2c66affSColin Finck ULONG ImpersonationType; 276*c2c66affSColin Finck ULONG AdditionalSecurityInfoType; 277*c2c66affSColin Finck union 278*c2c66affSColin Finck { 279*c2c66affSColin Finck RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials; 280*c2c66affSColin Finck } u; 281*c2c66affSColin Finck } RPC_SECURITY_QOS_V2_W, *PRPC_SECURITY_QOS_V2_W; 282*c2c66affSColin Finck 283*c2c66affSColin Finck typedef struct _RPC_SECURITY_QOS_V2_A 284*c2c66affSColin Finck { 285*c2c66affSColin Finck ULONG Version; 286*c2c66affSColin Finck ULONG Capabilities; 287*c2c66affSColin Finck ULONG IdentityTracking; 288*c2c66affSColin Finck ULONG ImpersonationType; 289*c2c66affSColin Finck ULONG AdditionalSecurityInfoType; 290*c2c66affSColin Finck union 291*c2c66affSColin Finck { 292*c2c66affSColin Finck RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials; 293*c2c66affSColin Finck } u; 294*c2c66affSColin Finck } RPC_SECURITY_QOS_V2_A, *PRPC_SECURITY_QOS_V2_A; 295*c2c66affSColin Finck 296*c2c66affSColin Finck #define _SEC_WINNT_AUTH_IDENTITY WINELIB_NAME_AW(_SEC_WINNT_AUTH_IDENTITY_) 297*c2c66affSColin Finck #define SEC_WINNT_AUTH_IDENTITY WINELIB_NAME_AW(SEC_WINNT_AUTH_IDENTITY_) 298*c2c66affSColin Finck #define PSEC_WINNT_AUTH_IDENTITY WINELIB_NAME_AW(PSEC_WINNT_AUTH_IDENTITY_) 299*c2c66affSColin Finck 300*c2c66affSColin Finck #define RPC_HTTP_TRANSPORT_CREDENTIALS_ WINELIB_NAME_AW(RPC_HTTP_TRANSPORT_CREDENTIALS_) 301*c2c66affSColin Finck #define PRPC_HTTP_TRANSPORT_CREDENTIALS_ WINELIB_NAME_AW(PRPC_HTTP_TRANSPORT_CREDENTIALS_) 302*c2c66affSColin Finck #define _RPC_HTTP_TRANSPORT_CREDENTIALS_ WINELIB_NAME_AW(_RPC_HTTP_TRANSPORT_CREDENTIALS_) 303*c2c66affSColin Finck 304*c2c66affSColin Finck #define RPC_SECURITY_QOS_V2 WINELIB_NAME_AW(RPC_SECURITY_QOS_V2_) 305*c2c66affSColin Finck #define PRPC_SECURITY_QOS_V2 WINELIB_NAME_AW(PRPC_SECURITY_QOS_V2_) 306*c2c66affSColin Finck #define _RPC_SECURITY_QOS_V2 WINELIB_NAME_AW(_RPC_SECURITY_QOS_V2_) 307*c2c66affSColin Finck 308*c2c66affSColin Finck /* SEC_WINNT_AUTH Flags */ 309*c2c66affSColin Finck #define SEC_WINNT_AUTH_IDENTITY_ANSI 0x1 310*c2c66affSColin Finck #define SEC_WINNT_AUTH_IDENTITY_UNICODE 0x2 311*c2c66affSColin Finck 312*c2c66affSColin Finck /* RpcServerRegisterIfEx Flags */ 313*c2c66affSColin Finck #define RPC_IF_AUTOLISTEN 0x01 314*c2c66affSColin Finck #define RPC_IF_OLE 0x02 315*c2c66affSColin Finck #define RPC_IF_ALLOW_UNKNOWN_AUTHORITY 0x04 316*c2c66affSColin Finck #define RPC_IF_ALLOW_SECURE_ONLY 0x08 317*c2c66affSColin Finck #define RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH 0x10 318*c2c66affSColin Finck #define RPC_IF_ALLOW_LOCAL_ONLY 0x20 319*c2c66affSColin Finck #define RPC_IF_SEC_NO_CACHE 0x40 320*c2c66affSColin Finck 321*c2c66affSColin Finck RPC_STATUS RPC_ENTRY DceErrorInqTextA(RPC_STATUS e, RPC_CSTR buffer); 322*c2c66affSColin Finck RPC_STATUS RPC_ENTRY DceErrorInqTextW(RPC_STATUS e, RPC_WSTR buffer); 323*c2c66affSColin Finck #define DceErrorInqText WINELIB_NAME_AW(DceErrorInqText) 324*c2c66affSColin Finck 325*c2c66affSColin Finck RPCRTAPI DECLSPEC_NORETURN void RPC_ENTRY 326*c2c66affSColin Finck RpcRaiseException( RPC_STATUS exception ); 327*c2c66affSColin Finck 328*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 329*c2c66affSColin Finck RpcBindingCopy( RPC_BINDING_HANDLE SourceBinding, RPC_BINDING_HANDLE* DestinationBinding ); 330*c2c66affSColin Finck 331*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 332*c2c66affSColin Finck RpcBindingFree( RPC_BINDING_HANDLE* Binding ); 333*c2c66affSColin Finck 334*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 335*c2c66affSColin Finck RpcBindingInqObject( RPC_BINDING_HANDLE Binding, UUID* ObjectUuid ); 336*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 337*c2c66affSColin Finck RpcBindingInqOption( RPC_BINDING_HANDLE Binding, ULONG Option, ULONG_PTR *OptionValue ); 338*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 339*c2c66affSColin Finck RpcBindingReset( RPC_BINDING_HANDLE Binding ); 340*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 341*c2c66affSColin Finck RpcBindingServerFromClient( RPC_BINDING_HANDLE ClientBinding, RPC_BINDING_HANDLE* ServerBinding ); 342*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 343*c2c66affSColin Finck RpcBindingSetObject( RPC_BINDING_HANDLE Binding, UUID* ObjectUuid ); 344*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 345*c2c66affSColin Finck RpcBindingSetOption( RPC_BINDING_HANDLE Binding, ULONG Option, ULONG_PTR OptionValue ); 346*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 347*c2c66affSColin Finck RpcObjectSetType( UUID* ObjUuid, UUID* TypeUuid ); 348*c2c66affSColin Finck 349*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 350*c2c66affSColin Finck RpcBindingFromStringBindingA( RPC_CSTR StringBinding, RPC_BINDING_HANDLE* Binding ); 351*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 352*c2c66affSColin Finck RpcBindingFromStringBindingW( RPC_WSTR StringBinding, RPC_BINDING_HANDLE* Binding ); 353*c2c66affSColin Finck #define RpcBindingFromStringBinding WINELIB_NAME_AW(RpcBindingFromStringBinding) 354*c2c66affSColin Finck 355*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 356*c2c66affSColin Finck RpcBindingToStringBindingA( RPC_BINDING_HANDLE Binding, RPC_CSTR *StringBinding ); 357*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 358*c2c66affSColin Finck RpcBindingToStringBindingW( RPC_BINDING_HANDLE Binding, RPC_WSTR *StringBinding ); 359*c2c66affSColin Finck #define RpcBindingToStringBinding WINELIB_NAME_AW(RpcBindingToStringBinding) 360*c2c66affSColin Finck 361*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 362*c2c66affSColin Finck RpcBindingVectorFree( RPC_BINDING_VECTOR** BindingVector ); 363*c2c66affSColin Finck 364*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 365*c2c66affSColin Finck RpcStringBindingComposeA( RPC_CSTR ObjUuid, RPC_CSTR Protseq, RPC_CSTR NetworkAddr, 366*c2c66affSColin Finck RPC_CSTR Endpoint, RPC_CSTR Options, RPC_CSTR *StringBinding ); 367*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 368*c2c66affSColin Finck RpcStringBindingComposeW( RPC_WSTR ObjUuid, RPC_WSTR Protseq, RPC_WSTR NetworkAddr, 369*c2c66affSColin Finck RPC_WSTR Endpoint, RPC_WSTR Options, RPC_WSTR *StringBinding ); 370*c2c66affSColin Finck #define RpcStringBindingCompose WINELIB_NAME_AW(RpcStringBindingCompose) 371*c2c66affSColin Finck 372*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 373*c2c66affSColin Finck RpcStringBindingParseA( RPC_CSTR StringBinding, RPC_CSTR *ObjUuid, RPC_CSTR *Protseq, 374*c2c66affSColin Finck RPC_CSTR *NetworkAddr, RPC_CSTR *Endpoint, RPC_CSTR *NetworkOptions ); 375*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 376*c2c66affSColin Finck RpcStringBindingParseW( RPC_WSTR StringBinding, RPC_WSTR *ObjUuid, RPC_WSTR *Protseq, 377*c2c66affSColin Finck RPC_WSTR *NetworkAddr, RPC_WSTR *Endpoint, RPC_WSTR *NetworkOptions ); 378*c2c66affSColin Finck #define RpcStringBindingParse WINELIB_NAME_AW(RpcStringBindingParse) 379*c2c66affSColin Finck 380*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 381*c2c66affSColin Finck RpcEpResolveBinding( RPC_BINDING_HANDLE Binding, RPC_IF_HANDLE IfSpec ); 382*c2c66affSColin Finck 383*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 384*c2c66affSColin Finck RpcEpRegisterA( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, 385*c2c66affSColin Finck UUID_VECTOR* UuidVector, RPC_CSTR Annotation ); 386*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 387*c2c66affSColin Finck RpcEpRegisterW( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, 388*c2c66affSColin Finck UUID_VECTOR* UuidVector, RPC_WSTR Annotation ); 389*c2c66affSColin Finck #define RpcEpRegister WINELIB_NAME_AW(RpcEpRegister) 390*c2c66affSColin Finck 391*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 392*c2c66affSColin Finck RpcEpRegisterNoReplaceA( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, 393*c2c66affSColin Finck UUID_VECTOR* UuidVector, RPC_CSTR Annotation ); 394*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 395*c2c66affSColin Finck RpcEpRegisterNoReplaceW( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, 396*c2c66affSColin Finck UUID_VECTOR* UuidVector, RPC_WSTR Annotation ); 397*c2c66affSColin Finck #define RpcEpRegisterNoReplace WINELIB_NAME_AW(RpcEpRegisterNoReplace) 398*c2c66affSColin Finck 399*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 400*c2c66affSColin Finck RpcEpUnregister( RPC_IF_HANDLE IfSpec, RPC_BINDING_VECTOR* BindingVector, 401*c2c66affSColin Finck UUID_VECTOR* UuidVector ); 402*c2c66affSColin Finck 403*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 404*c2c66affSColin Finck RpcServerInqBindings( RPC_BINDING_VECTOR** BindingVector ); 405*c2c66affSColin Finck 406*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 407*c2c66affSColin Finck RpcServerListen( unsigned int MinimumCallThreads, unsigned int MaxCalls, unsigned int DontWait ); 408*c2c66affSColin Finck 409*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 410*c2c66affSColin Finck RpcMgmtEnableIdleCleanup( void ); 411*c2c66affSColin Finck 412*c2c66affSColin Finck typedef int (__RPC_API *RPC_MGMT_AUTHORIZATION_FN)( RPC_BINDING_HANDLE, ULONG, RPC_STATUS * ); 413*c2c66affSColin Finck 414*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY RpcMgmtSetAuthorizationFn( RPC_MGMT_AUTHORIZATION_FN ); 415*c2c66affSColin Finck 416*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY RpcMgmtSetCancelTimeout(LONG); 417*c2c66affSColin Finck 418*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 419*c2c66affSColin Finck RpcMgmtWaitServerListen( void ); 420*c2c66affSColin Finck 421*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 422*c2c66affSColin Finck RpcMgmtInqStats( RPC_BINDING_HANDLE Binding, RPC_STATS_VECTOR **Statistics ); 423*c2c66affSColin Finck 424*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 425*c2c66affSColin Finck RpcMgmtStopServerListening( RPC_BINDING_HANDLE Binding ); 426*c2c66affSColin Finck 427*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 428*c2c66affSColin Finck RpcMgmtIsServerListening(RPC_BINDING_HANDLE Binding); 429*c2c66affSColin Finck 430*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 431*c2c66affSColin Finck RpcMgmtInqIfIds( RPC_BINDING_HANDLE Binding, RPC_IF_ID_VECTOR** IfIdVector ); 432*c2c66affSColin Finck 433*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 434*c2c66affSColin Finck RpcMgmtEpEltInqBegin( RPC_BINDING_HANDLE EpBinding, ULONG InquiryType, RPC_IF_ID *IfId, 435*c2c66affSColin Finck ULONG VersOption, UUID *ObjectUuid, RPC_EP_INQ_HANDLE *InquiryContext); 436*c2c66affSColin Finck 437*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 438*c2c66affSColin Finck RpcMgmtSetComTimeout( RPC_BINDING_HANDLE Binding, unsigned int Timeout ); 439*c2c66affSColin Finck 440*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 441*c2c66affSColin Finck RpcMgmtSetServerStackSize( ULONG ThreadStackSize ); 442*c2c66affSColin Finck 443*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 444*c2c66affSColin Finck RpcMgmtStatsVectorFree( RPC_STATS_VECTOR **StatsVector ); 445*c2c66affSColin Finck 446*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 447*c2c66affSColin Finck RpcServerRegisterIf( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv ); 448*c2c66affSColin Finck 449*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 450*c2c66affSColin Finck RpcServerRegisterIfEx( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv, 451*c2c66affSColin Finck unsigned int Flags, unsigned int MaxCalls, RPC_IF_CALLBACK_FN* IfCallbackFn ); 452*c2c66affSColin Finck 453*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 454*c2c66affSColin Finck RpcServerRegisterIf2( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv, 455*c2c66affSColin Finck unsigned int Flags, unsigned int MaxCalls, unsigned int MaxRpcSize, RPC_IF_CALLBACK_FN* IfCallbackFn ); 456*c2c66affSColin Finck 457*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 458*c2c66affSColin Finck RpcServerRegisterIf3( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, RPC_MGR_EPV* MgrEpv, 459*c2c66affSColin Finck unsigned int Flags, unsigned int MaxCalls, unsigned int MaxRpcSize, 460*c2c66affSColin Finck RPC_IF_CALLBACK_FN* IfCallbackFn, void* SecurityDescriptor ); 461*c2c66affSColin Finck 462*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 463*c2c66affSColin Finck RpcServerUnregisterIf( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, unsigned int WaitForCallsToComplete ); 464*c2c66affSColin Finck 465*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 466*c2c66affSColin Finck RpcServerUnregisterIfEx( RPC_IF_HANDLE IfSpec, UUID* MgrTypeUuid, int RundownContextHandles ); 467*c2c66affSColin Finck 468*c2c66affSColin Finck 469*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 470*c2c66affSColin Finck RpcServerUseProtseqA(RPC_CSTR Protseq, unsigned int MaxCalls, void *SecurityDescriptor); 471*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 472*c2c66affSColin Finck RpcServerUseProtseqW(RPC_WSTR Protseq, unsigned int MaxCalls, void *SecurityDescriptor); 473*c2c66affSColin Finck #define RpcServerUseProtseq WINELIB_NAME_AW(RpcServerUseProtseq) 474*c2c66affSColin Finck 475*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 476*c2c66affSColin Finck RpcServerUseProtseqEpA( RPC_CSTR Protseq, unsigned int MaxCalls, RPC_CSTR Endpoint, void *SecurityDescriptor ); 477*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 478*c2c66affSColin Finck RpcServerUseProtseqEpW( RPC_WSTR Protseq, unsigned int MaxCalls, RPC_WSTR Endpoint, void *SecurityDescriptor ); 479*c2c66affSColin Finck #define RpcServerUseProtseqEp WINELIB_NAME_AW(RpcServerUseProtseqEp) 480*c2c66affSColin Finck 481*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 482*c2c66affSColin Finck RpcServerUseProtseqEpExA( RPC_CSTR Protseq, unsigned int MaxCalls, RPC_CSTR Endpoint, void *SecurityDescriptor, 483*c2c66affSColin Finck PRPC_POLICY Policy ); 484*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 485*c2c66affSColin Finck RpcServerUseProtseqEpExW( RPC_WSTR Protseq, unsigned int MaxCalls, RPC_WSTR Endpoint, void *SecurityDescriptor, 486*c2c66affSColin Finck PRPC_POLICY Policy ); 487*c2c66affSColin Finck #define RpcServerUseProtseqEpEx WINELIB_NAME_AW(RpcServerUseProtseqEpEx) 488*c2c66affSColin Finck 489*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 490*c2c66affSColin Finck RpcServerRegisterAuthInfoA( RPC_CSTR ServerPrincName, ULONG AuthnSvc, RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn, 491*c2c66affSColin Finck void *Arg ); 492*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 493*c2c66affSColin Finck RpcServerRegisterAuthInfoW( RPC_WSTR ServerPrincName, ULONG AuthnSvc, RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn, 494*c2c66affSColin Finck void *Arg ); 495*c2c66affSColin Finck #define RpcServerRegisterAuthInfo WINELIB_NAME_AW(RpcServerRegisterAuthInfo) 496*c2c66affSColin Finck 497*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 498*c2c66affSColin Finck RpcBindingSetAuthInfoExA( RPC_BINDING_HANDLE Binding, RPC_CSTR ServerPrincName, ULONG AuthnLevel, 499*c2c66affSColin Finck ULONG AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, ULONG AuthzSvr, 500*c2c66affSColin Finck RPC_SECURITY_QOS *SecurityQos ); 501*c2c66affSColin Finck 502*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 503*c2c66affSColin Finck RpcBindingSetAuthInfoExW( RPC_BINDING_HANDLE Binding, RPC_WSTR ServerPrincName, ULONG AuthnLevel, 504*c2c66affSColin Finck ULONG AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, ULONG AuthzSvr, 505*c2c66affSColin Finck RPC_SECURITY_QOS *SecurityQos ); 506*c2c66affSColin Finck #define RpcBindingSetAuthInfoEx WINELIB_NAME_AW(RpcBindingSetAuthInfoEx) 507*c2c66affSColin Finck 508*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 509*c2c66affSColin Finck RpcBindingSetAuthInfoA( RPC_BINDING_HANDLE Binding, RPC_CSTR ServerPrincName, ULONG AuthnLevel, 510*c2c66affSColin Finck ULONG AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, ULONG AuthzSvr ); 511*c2c66affSColin Finck 512*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 513*c2c66affSColin Finck RpcBindingSetAuthInfoW( RPC_BINDING_HANDLE Binding, RPC_WSTR ServerPrincName, ULONG AuthnLevel, 514*c2c66affSColin Finck ULONG AuthnSvc, RPC_AUTH_IDENTITY_HANDLE AuthIdentity, ULONG AuthzSvr ); 515*c2c66affSColin Finck #define RpcBindingSetAuthInfo WINELIB_NAME_AW(RpcBindingSetAuthInfo) 516*c2c66affSColin Finck 517*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 518*c2c66affSColin Finck RpcBindingInqAuthInfoExA( RPC_BINDING_HANDLE Binding, RPC_CSTR * ServerPrincName, ULONG *AuthnLevel, 519*c2c66affSColin Finck ULONG *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, ULONG *AuthzSvc, 520*c2c66affSColin Finck ULONG RpcQosVersion, RPC_SECURITY_QOS *SecurityQOS ); 521*c2c66affSColin Finck 522*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 523*c2c66affSColin Finck RpcBindingInqAuthInfoExW( RPC_BINDING_HANDLE Binding, RPC_WSTR *ServerPrincName, ULONG *AuthnLevel, 524*c2c66affSColin Finck ULONG *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, ULONG *AuthzSvc, 525*c2c66affSColin Finck ULONG RpcQosVersion, RPC_SECURITY_QOS *SecurityQOS ); 526*c2c66affSColin Finck #define RpcBindingInqAuthInfoEx WINELIB_NAME_AW(RpcBindingInqAuthInfoEx) 527*c2c66affSColin Finck 528*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 529*c2c66affSColin Finck RpcBindingInqAuthInfoA( RPC_BINDING_HANDLE Binding, RPC_CSTR * ServerPrincName, ULONG *AuthnLevel, 530*c2c66affSColin Finck ULONG *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, ULONG *AuthzSvc ); 531*c2c66affSColin Finck 532*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 533*c2c66affSColin Finck RpcBindingInqAuthInfoW( RPC_BINDING_HANDLE Binding, RPC_WSTR *ServerPrincName, ULONG *AuthnLevel, 534*c2c66affSColin Finck ULONG *AuthnSvc, RPC_AUTH_IDENTITY_HANDLE *AuthIdentity, ULONG *AuthzSvc ); 535*c2c66affSColin Finck #define RpcBindingInqAuthInfo WINELIB_NAME_AW(RpcBindingInqAuthInfo) 536*c2c66affSColin Finck 537*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 538*c2c66affSColin Finck RpcBindingInqAuthClientA( RPC_BINDING_HANDLE ClientBinding, RPC_AUTHZ_HANDLE *Privs, 539*c2c66affSColin Finck RPC_CSTR *ServerPrincName, ULONG *AuthnLevel, ULONG *AuthnSvc, 540*c2c66affSColin Finck ULONG *AuthzSvc ); 541*c2c66affSColin Finck 542*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 543*c2c66affSColin Finck RpcBindingInqAuthClientW( RPC_BINDING_HANDLE ClientBinding, RPC_AUTHZ_HANDLE *Privs, 544*c2c66affSColin Finck RPC_WSTR *ServerPrincName, ULONG *AuthnLevel, ULONG *AuthnSvc, 545*c2c66affSColin Finck ULONG *AuthzSvc ); 546*c2c66affSColin Finck #define RpcBindingInqAuthClient WINELIB_NAME_AW(RpcBindingInqAuthClient) 547*c2c66affSColin Finck 548*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 549*c2c66affSColin Finck RpcBindingInqAuthClientExA( RPC_BINDING_HANDLE ClientBinding, RPC_AUTHZ_HANDLE *Privs, 550*c2c66affSColin Finck RPC_CSTR *ServerPrincName, ULONG *AuthnLevel, ULONG *AuthnSvc, 551*c2c66affSColin Finck ULONG *AuthzSvc, ULONG Flags ); 552*c2c66affSColin Finck 553*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 554*c2c66affSColin Finck RpcBindingInqAuthClientExW( RPC_BINDING_HANDLE ClientBinding, RPC_AUTHZ_HANDLE *Privs, 555*c2c66affSColin Finck RPC_WSTR *ServerPrincName, ULONG *AuthnLevel, ULONG *AuthnSvc, 556*c2c66affSColin Finck ULONG *AuthzSvc, ULONG Flags ); 557*c2c66affSColin Finck #define RpcBindingInqAuthClientEx WINELIB_NAME_AW(RpcBindingInqAuthClientEx) 558*c2c66affSColin Finck 559*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY RpcCancelThread(void*); 560*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY RpcCancelThreadEx(void*,LONG); 561*c2c66affSColin Finck 562*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 563*c2c66affSColin Finck RpcImpersonateClient( RPC_BINDING_HANDLE Binding ); 564*c2c66affSColin Finck 565*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 566*c2c66affSColin Finck RpcNetworkIsProtseqValidA( RPC_CSTR protseq ); 567*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 568*c2c66affSColin Finck RpcNetworkIsProtseqValidW( RPC_WSTR protseq ); 569*c2c66affSColin Finck #define RpcNetworkIsProtseqValid WINELIB_NAME_AW(RpcNetworkIsProtseqValid) 570*c2c66affSColin Finck 571*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 572*c2c66affSColin Finck RpcNetworkInqProtseqsA( RPC_PROTSEQ_VECTORA** protseqs ); 573*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 574*c2c66affSColin Finck RpcNetworkInqProtseqsW( RPC_PROTSEQ_VECTORW** protseqs ); 575*c2c66affSColin Finck #define RpcNetworkInqProtseqs WINELIB_NAME_AW(RpcNetworkInqProtseqs) 576*c2c66affSColin Finck 577*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 578*c2c66affSColin Finck RpcProtseqVectorFreeA( RPC_PROTSEQ_VECTORA** protseqs ); 579*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 580*c2c66affSColin Finck RpcProtseqVectorFreeW( RPC_PROTSEQ_VECTORW** protseqs ); 581*c2c66affSColin Finck #define RpcProtseqVectorFree WINELIB_NAME_AW(RpcProtseqVectorFree) 582*c2c66affSColin Finck 583*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 584*c2c66affSColin Finck RpcRevertToSelf( void ); 585*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 586*c2c66affSColin Finck RpcRevertToSelfEx( RPC_BINDING_HANDLE Binding ); 587*c2c66affSColin Finck 588*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 589*c2c66affSColin Finck RpcStringFreeA(RPC_CSTR* String); 590*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 591*c2c66affSColin Finck RpcStringFreeW(RPC_WSTR* String); 592*c2c66affSColin Finck #define RpcStringFree WINELIB_NAME_AW(RpcStringFree) 593*c2c66affSColin Finck 594*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 595*c2c66affSColin Finck UuidToStringA( UUID* Uuid, RPC_CSTR* StringUuid ); 596*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 597*c2c66affSColin Finck UuidToStringW( UUID* Uuid, RPC_WSTR* StringUuid ); 598*c2c66affSColin Finck #define UuidToString WINELIB_NAME_AW(UuidToString) 599*c2c66affSColin Finck 600*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 601*c2c66affSColin Finck UuidFromStringA( RPC_CSTR StringUuid, UUID* Uuid ); 602*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 603*c2c66affSColin Finck UuidFromStringW( RPC_WSTR StringUuid, UUID* Uuid ); 604*c2c66affSColin Finck #define UuidFromString WINELIB_NAME_AW(UuidFromString) 605*c2c66affSColin Finck 606*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 607*c2c66affSColin Finck UuidCreate( UUID* Uuid ); 608*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 609*c2c66affSColin Finck UuidCreateSequential( UUID* Uuid ); 610*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 611*c2c66affSColin Finck UuidCreateNil( UUID* Uuid ); 612*c2c66affSColin Finck RPCRTAPI signed int RPC_ENTRY 613*c2c66affSColin Finck UuidCompare( UUID* Uuid1, UUID* Uuid2, RPC_STATUS* Status_ ); 614*c2c66affSColin Finck RPCRTAPI int RPC_ENTRY 615*c2c66affSColin Finck UuidEqual( UUID* Uuid1, UUID* Uuid2, RPC_STATUS* Status_ ); 616*c2c66affSColin Finck RPCRTAPI unsigned short RPC_ENTRY 617*c2c66affSColin Finck UuidHash(UUID* Uuid, RPC_STATUS* Status_ ); 618*c2c66affSColin Finck RPCRTAPI int RPC_ENTRY 619*c2c66affSColin Finck UuidIsNil( UUID* Uuid, RPC_STATUS* Status_ ); 620*c2c66affSColin Finck 621*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 622*c2c66affSColin Finck RpcServerInqDefaultPrincNameA( ULONG AuthnSvc, RPC_CSTR *PrincName ); 623*c2c66affSColin Finck RPCRTAPI RPC_STATUS RPC_ENTRY 624*c2c66affSColin Finck RpcServerInqDefaultPrincNameW( ULONG AuthnSvc, RPC_WSTR *PrincName ); 625*c2c66affSColin Finck #define RpcServerInqDefaultPrincName WINELIB_NAME_AW(RpcServerInqDefaultPrincName) 626*c2c66affSColin Finck 627*c2c66affSColin Finck #ifdef __cplusplus 628*c2c66affSColin Finck } 629*c2c66affSColin Finck #endif 630*c2c66affSColin Finck 631*c2c66affSColin Finck #include <rpcdcep.h> 632*c2c66affSColin Finck 633*c2c66affSColin Finck #endif /*__WINE_RPCDCE_H */ 634