Commit 522cecf6 authored by Alexandre Julliard's avatar Alexandre Julliard

include: Update a couple of RPC structures.

parent bcb7396a
...@@ -78,7 +78,6 @@ void WINAPI NdrClientInitializeNew( PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE ...@@ -78,7 +78,6 @@ void WINAPI NdrClientInitializeNew( PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE
pStubMsg->PointerLength = 0; pStubMsg->PointerLength = 0;
pStubMsg->fInDontFree = 0; pStubMsg->fInDontFree = 0;
pStubMsg->fDontCallFreeInst = 0; pStubMsg->fDontCallFreeInst = 0;
pStubMsg->fInOnlyParam = 0;
pStubMsg->fHasReturn = 0; pStubMsg->fHasReturn = 0;
pStubMsg->fHasExtensions = 0; pStubMsg->fHasExtensions = 0;
pStubMsg->fHasNewCorrDesc = 0; pStubMsg->fHasNewCorrDesc = 0;
...@@ -89,7 +88,7 @@ void WINAPI NdrClientInitializeNew( PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE ...@@ -89,7 +88,7 @@ void WINAPI NdrClientInitializeNew( PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE
pStubMsg->fHasMemoryValidateCallback = 0; pStubMsg->fHasMemoryValidateCallback = 0;
pStubMsg->fInFree = 0; pStubMsg->fInFree = 0;
pStubMsg->fNeedMCCP = 0; pStubMsg->fNeedMCCP = 0;
pStubMsg->fUnused = 0; pStubMsg->fUnused2 = 0;
pStubMsg->dwDestContext = MSHCTX_DIFFERENTMACHINE; pStubMsg->dwDestContext = MSHCTX_DIFFERENTMACHINE;
pStubMsg->pvDestContext = NULL; pStubMsg->pvDestContext = NULL;
pStubMsg->pRpcChannelBuffer = NULL; pStubMsg->pRpcChannelBuffer = NULL;
...@@ -132,7 +131,6 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M ...@@ -132,7 +131,6 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M
pStubMsg->PointerLength = 0; pStubMsg->PointerLength = 0;
pStubMsg->fInDontFree = 0; pStubMsg->fInDontFree = 0;
pStubMsg->fDontCallFreeInst = 0; pStubMsg->fDontCallFreeInst = 0;
pStubMsg->fInOnlyParam = 0;
pStubMsg->fHasReturn = 0; pStubMsg->fHasReturn = 0;
pStubMsg->fHasExtensions = 0; pStubMsg->fHasExtensions = 0;
pStubMsg->fHasNewCorrDesc = 0; pStubMsg->fHasNewCorrDesc = 0;
...@@ -142,7 +140,7 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M ...@@ -142,7 +140,7 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M
pStubMsg->fHasMemoryValidateCallback = 0; pStubMsg->fHasMemoryValidateCallback = 0;
pStubMsg->fInFree = 0; pStubMsg->fInFree = 0;
pStubMsg->fNeedMCCP = 0; pStubMsg->fNeedMCCP = 0;
pStubMsg->fUnused = 0; pStubMsg->fUnused2 = 0;
pStubMsg->dwDestContext = MSHCTX_DIFFERENTMACHINE; pStubMsg->dwDestContext = MSHCTX_DIFFERENTMACHINE;
pStubMsg->pvDestContext = NULL; pStubMsg->pvDestContext = NULL;
pStubMsg->pRpcChannelBuffer = NULL; pStubMsg->pRpcChannelBuffer = NULL;
......
...@@ -686,9 +686,9 @@ static void test_pack_MIDL_SYNTAX_INFO(void) ...@@ -686,9 +686,9 @@ static void test_pack_MIDL_SYNTAX_INFO(void)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8) TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8) TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 56) TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 56)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved1, 8) TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pMethodProperties, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved1, 8) TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pMethodProperties, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved1, 64) TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pMethodProperties, 64)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 8) TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 8) TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 72) TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 72)
...@@ -1548,9 +1548,9 @@ static void test_pack_MIDL_SYNTAX_INFO(void) ...@@ -1548,9 +1548,9 @@ static void test_pack_MIDL_SYNTAX_INFO(void)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4) TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4) TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 36) TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 36)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved1, 4) TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pMethodProperties, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved1, 4) TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pMethodProperties, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved1, 40) TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pMethodProperties, 40)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 4) TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 4) TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 44) TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 44)
......
...@@ -1728,11 +1728,11 @@ static void test_common_stub_data( const char *prefix, const MIDL_STUB_MESSAGE * ...@@ -1728,11 +1728,11 @@ static void test_common_stub_data( const char *prefix, const MIDL_STUB_MESSAGE *
ok(stubMsg->fBufferValid == 0, ok(stubMsg->fBufferValid == 0,
"%s: fBufferValid should have been set to 0 instead of %d\n", prefix, stubMsg->fBufferValid); "%s: fBufferValid should have been set to 0 instead of %d\n", prefix, stubMsg->fBufferValid);
TEST_ZERO(fNeedMCCP, "%d"); TEST_ZERO(fNeedMCCP, "%d");
ok(stubMsg->fUnused == 0 || ok(stubMsg->fUnused2 == 0 ||
stubMsg->fUnused == -2, /* Vista */ stubMsg->fUnused2 == -2, /* Vista */
"%s: fUnused should have been set to 0 or -2 instead of %d\n", prefix, stubMsg->fUnused); "%s: fUnused2 should have been set to 0 or -2 instead of %d\n", prefix, stubMsg->fUnused2);
ok(stubMsg->fUnused2 == 0xffffcccc, "%s: fUnused2 should have been 0xffffcccc instead of 0x%x\n", ok(stubMsg->fUnused3 == 0xffffcccc, "%s: fUnused3 should have been 0xffffcccc instead of 0x%x\n",
prefix, stubMsg->fUnused2); prefix, stubMsg->fUnused3);
ok(stubMsg->dwDestContext == MSHCTX_DIFFERENTMACHINE, ok(stubMsg->dwDestContext == MSHCTX_DIFFERENTMACHINE,
"%s: dwDestContext should have been MSHCTX_DIFFERENTMACHINE instead of %ld\n", "%s: dwDestContext should have been MSHCTX_DIFFERENTMACHINE instead of %ld\n",
prefix, stubMsg->dwDestContext); prefix, stubMsg->dwDestContext);
......
...@@ -71,6 +71,11 @@ typedef INT64 hyper; ...@@ -71,6 +71,11 @@ typedef INT64 hyper;
typedef UINT64 MIDL_uhyper; typedef UINT64 MIDL_uhyper;
typedef unsigned char boolean; typedef unsigned char boolean;
#ifndef _ERROR_STATUS_T_DEFINED
typedef ULONG error_status_t;
#define _ERROR_STATUS_T_DEFINED
#endif
#define __RPC_CALLEE WINAPI #define __RPC_CALLEE WINAPI
#define RPC_VAR_ENTRY WINAPIV #define RPC_VAR_ENTRY WINAPIV
#define NDR_SHAREABLE static #define NDR_SHAREABLE static
...@@ -179,7 +184,7 @@ typedef struct _MIDL_STUB_MESSAGE ...@@ -179,7 +184,7 @@ typedef struct _MIDL_STUB_MESSAGE
ULONG PointerLength; ULONG PointerLength;
unsigned int fInDontFree:1; unsigned int fInDontFree:1;
unsigned int fDontCallFreeInst:1; unsigned int fDontCallFreeInst:1;
unsigned int fInOnlyParam:1; unsigned int fUnused1 :1;
unsigned int fHasReturn:1; unsigned int fHasReturn:1;
unsigned int fHasExtensions:1; unsigned int fHasExtensions:1;
unsigned int fHasNewCorrDesc:1; unsigned int fHasNewCorrDesc:1;
...@@ -190,8 +195,8 @@ typedef struct _MIDL_STUB_MESSAGE ...@@ -190,8 +195,8 @@ typedef struct _MIDL_STUB_MESSAGE
unsigned int fHasMemoryValidateCallback:1; unsigned int fHasMemoryValidateCallback:1;
unsigned int fInFree:1; unsigned int fInFree:1;
unsigned int fNeedMCCP:1; unsigned int fNeedMCCP:1;
int fUnused:3; int fUnused2:3;
int fUnused2:16; int fUnused3:16;
DWORD dwDestContext; DWORD dwDestContext;
void *pvDestContext; void *pvDestContext;
NDR_SCONTEXT *SavedContextHandles; NDR_SCONTEXT *SavedContextHandles;
...@@ -303,6 +308,39 @@ typedef struct _COMM_FAULT_OFFSETS ...@@ -303,6 +308,39 @@ typedef struct _COMM_FAULT_OFFSETS
short FaultOffset; short FaultOffset;
} COMM_FAULT_OFFSETS; } COMM_FAULT_OFFSETS;
typedef enum _IDL_CS_CONVERT
{
IDL_CS_NO_CONVERT,
IDL_CS_IN_PLACE_CONVERT,
IDL_CS_NEW_BUFFER_CONVERT
} IDL_CS_CONVERT;
typedef void (__RPC_USER * CS_TYPE_NET_SIZE_ROUTINE)(RPC_BINDING_HANDLE,ULONG,ULONG,IDL_CS_CONVERT*,ULONG*,error_status_t*);
typedef void (__RPC_USER * CS_TYPE_TO_NETCS_ROUTINE)(RPC_BINDING_HANDLE,ULONG,void*,ULONG,byte*,ULONG*,error_status_t*);
typedef void (__RPC_USER * CS_TYPE_LOCAL_SIZE_ROUTINE)(RPC_BINDING_HANDLE,ULONG,ULONG,IDL_CS_CONVERT*,ULONG*,error_status_t*);
typedef void (__RPC_USER * CS_TYPE_FROM_NETCS_ROUTINE)(RPC_BINDING_HANDLE,ULONG,byte*,ULONG,ULONG,void*,ULONG*,error_status_t*);
typedef void (__RPC_USER * CS_TAG_GETTING_ROUTINE)(RPC_BINDING_HANDLE,int,ULONG*,ULONG*,ULONG*,error_status_t*);
typedef struct _NDR_CS_SIZE_CONVERT_ROUTINES
{
CS_TYPE_NET_SIZE_ROUTINE pfnNetSize;
CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs;
CS_TYPE_LOCAL_SIZE_ROUTINE pfnLocalSize;
CS_TYPE_FROM_NETCS_ROUTINE pfnFromNetCs;
} NDR_CS_SIZE_CONVERT_ROUTINES;
typedef struct _NDR_CS_ROUTINES
{
NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines;
CS_TAG_GETTING_ROUTINE *pTagGettingRoutines;
} NDR_CS_ROUTINES;
typedef struct _NDR_EXPR_DESC
{
const unsigned short *pOffset;
PFORMAT_STRING pFormatExpr;
} NDR_EXPR_DESC;
typedef struct _MIDL_STUB_DESC typedef struct _MIDL_STUB_DESC
{ {
void *RpcInterfaceInformation; void *RpcInterfaceInformation;
...@@ -326,22 +364,36 @@ typedef struct _MIDL_STUB_DESC ...@@ -326,22 +364,36 @@ typedef struct _MIDL_STUB_DESC
const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple; const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
const NDR_NOTIFY_ROUTINE *NotifyRoutineTable; const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
ULONG_PTR mFlags; ULONG_PTR mFlags;
ULONG_PTR Reserved3; const NDR_CS_ROUTINES *CsRoutineTables;
ULONG_PTR Reserved4; void *ProxyServerInfo;
ULONG_PTR Reserved5; const NDR_EXPR_DESC *pExprInfo;
} MIDL_STUB_DESC; } MIDL_STUB_DESC;
typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC; typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC;
typedef struct _MIDL_FORMAT_STRING typedef struct _MIDL_FORMAT_STRING
{ {
short Pad; short Pad;
#if defined(__GNUC__) unsigned char Format[];
unsigned char Format[0];
#else
unsigned char Format[1];
#endif
} MIDL_FORMAT_STRING; } MIDL_FORMAT_STRING;
typedef struct _MIDL_METHOD_PROPERTY
{
ULONG Id;
ULONG_PTR Value;
} MIDL_METHOD_PROPERTY, *PMIDL_METHOD_PROPERTY;
typedef struct _MIDL_METHOD_PROPERTY_MAP
{
ULONG Count;
const MIDL_METHOD_PROPERTY *Properties;
} MIDL_METHOD_PROPERTY_MAP, *PMIDL_METHOD_PROPERTY_MAP;
typedef struct _MIDL_INTERFACE_METHOD_PROPERTIES
{
unsigned short MethodCount;
const MIDL_METHOD_PROPERTY_MAP * const *MethodProperties;
} MIDL_INTERFACE_METHOD_PROPERTIES;
typedef struct _MIDL_SYNTAX_INFO typedef struct _MIDL_SYNTAX_INFO
{ {
RPC_SYNTAX_IDENTIFIER TransferSyntax; RPC_SYNTAX_IDENTIFIER TransferSyntax;
...@@ -350,7 +402,7 @@ typedef struct _MIDL_SYNTAX_INFO ...@@ -350,7 +402,7 @@ typedef struct _MIDL_SYNTAX_INFO
const unsigned short* FmtStringOffset; const unsigned short* FmtStringOffset;
PFORMAT_STRING TypeString; PFORMAT_STRING TypeString;
const void* aUserMarshalQuadruple; const void* aUserMarshalQuadruple;
ULONG_PTR pReserved1; const MIDL_INTERFACE_METHOD_PROPERTIES *pMethodProperties;
ULONG_PTR pReserved2; ULONG_PTR pReserved2;
} MIDL_SYNTAX_INFO, *PMIDL_SYNTAX_INFO; } MIDL_SYNTAX_INFO, *PMIDL_SYNTAX_INFO;
...@@ -443,11 +495,6 @@ typedef struct _FULL_PTR_XLAT_TABLES { ...@@ -443,11 +495,6 @@ typedef struct _FULL_PTR_XLAT_TABLES {
struct IRpcStubBuffer; struct IRpcStubBuffer;
#ifndef _ERROR_STATUS_T_DEFINED
typedef ULONG error_status_t;
#define _ERROR_STATUS_T_DEFINED
#endif
typedef void * NDR_CCONTEXT; typedef void * NDR_CCONTEXT;
typedef struct _SCONTEXT_QUEUE { typedef struct _SCONTEXT_QUEUE {
......
...@@ -17,8 +17,7 @@ ...@@ -17,8 +17,7 @@
*/ */
#ifndef __RPCPROXY_H_VERSION__ #ifndef __RPCPROXY_H_VERSION__
/* FIXME: Find an appropriate version number. I guess something is better than nothing */ #define __RPCPROXY_H_VERSION__ (477)
#define __RPCPROXY_H_VERSION__ ( 399 )
#endif #endif
#ifndef __WINE_RPCPROXY_H #ifndef __WINE_RPCPROXY_H
...@@ -78,11 +77,7 @@ typedef struct tagCInterfaceProxyHeader ...@@ -78,11 +77,7 @@ typedef struct tagCInterfaceProxyHeader
typedef struct tagCInterfaceProxyVtbl typedef struct tagCInterfaceProxyVtbl
{ {
CInterfaceProxyHeader header; CInterfaceProxyHeader header;
#if defined(__GNUC__) void *Vtbl[];
void *Vtbl[0];
#else
void *Vtbl[1];
#endif
} CInterfaceProxyVtbl; } CInterfaceProxyVtbl;
typedef void (__RPC_STUB *PRPC_STUB_FUNCTION)( typedef void (__RPC_STUB *PRPC_STUB_FUNCTION)(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment