rpcasync.h revision ee6bcfc59fe3b0230aad85e2ef63d0402b7719b2
/*
* Copyright (C) 2007 Francois Gouget
*
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
/*
* Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
* other than GPL or LGPL is available it will apply instead, Sun elects to use only
* the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
* a choice of LGPL license versions is made available with the language indicating
* that LGPLv2 or any later version may be used, or where a choice of which version
* of the LGPL is applied is otherwise unspecified.
*/
#ifndef __WINE_RPCASYNC_H
#define __WINE_RPCASYNC_H
typedef struct tagRPC_ERROR_ENUM_HANDLE
{
void* CurrentPos;
void* Head;
typedef enum tagExtendedErrorParamTypes
{
eeptAnsiString = 1,
#define MaxNumberOfEEInfoParams 4
#define RPC_EEINFO_VERSION 1
typedef struct tagBinaryParam
{
void *Buffer;
short Size;
} BinaryParam;
typedef struct tagRPC_EE_INFO_PARAM
{
union
{
short SVal;
} u;
#define EEInfoPreviousRecordsMissing 0x1
#define EEInfoNextRecordsMissing 0x2
#define EEInfoUseFileTime 0x4
#define EEInfoGCCOM 11
#define EEInfoGCFRS 12
typedef struct tagRPC_EXTENDED_ERROR_INFO
{
union
{
} u;
int NumberOfParameters;
#define RPC_ASYNC_VERSION_1_0 sizeof(RPC_ASYNC_STATE)
typedef enum _RPC_NOTIFICATION_TYPES
{
typedef enum _RPC_ASYNC_EVENT
{
struct _RPC_ASYNC_STATE;
typedef union _RPC_ASYNC_NOTIFICATION_INFO
{
struct
{
} APC;
struct
{
} IOC;
struct
{
} HWND;
#define RPC_C_NOTIFY_ON_SEND_COMPLETE 0x1
#define RPC_C_INFINITE_TIMEOUT INFINITE
typedef struct _RPC_ASYNC_STATE
{
unsigned int Size;
void *StubInfo;
void *UserInfo;
void *RuntimeInfo;
#ifdef __cplusplus
extern "C" {
#endif
RPCRTAPI RPC_STATUS RPC_ENTRY RpcErrorGetNextRecord(RPC_ERROR_ENUM_HANDLE*,BOOL,RPC_EXTENDED_ERROR_INFO*);
RPCRTAPI RPC_STATUS RPC_ENTRY RpcGetAuthorizationContextForClient(RPC_BINDING_HANDLE,BOOL,LPVOID,PLARGE_INTEGER,LUID,DWORD,PVOID,PVOID*);
#ifdef __cplusplus
}
#endif
#endif