1
0
mirror of https://github.com/wine-mirror/wine synced 2024-06-29 06:14:34 +00:00

include: Update a couple of RPC structures.

This commit is contained in:
Alexandre Julliard 2024-04-23 11:26:51 +02:00
parent bcb7396adf
commit 522cecf67c
5 changed files with 79 additions and 39 deletions

View File

@ -78,7 +78,6 @@ void WINAPI NdrClientInitializeNew( PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE
pStubMsg->PointerLength = 0;
pStubMsg->fInDontFree = 0;
pStubMsg->fDontCallFreeInst = 0;
pStubMsg->fInOnlyParam = 0;
pStubMsg->fHasReturn = 0;
pStubMsg->fHasExtensions = 0;
pStubMsg->fHasNewCorrDesc = 0;
@ -89,7 +88,7 @@ void WINAPI NdrClientInitializeNew( PRPC_MESSAGE pRpcMessage, PMIDL_STUB_MESSAGE
pStubMsg->fHasMemoryValidateCallback = 0;
pStubMsg->fInFree = 0;
pStubMsg->fNeedMCCP = 0;
pStubMsg->fUnused = 0;
pStubMsg->fUnused2 = 0;
pStubMsg->dwDestContext = MSHCTX_DIFFERENTMACHINE;
pStubMsg->pvDestContext = NULL;
pStubMsg->pRpcChannelBuffer = NULL;
@ -132,7 +131,6 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M
pStubMsg->PointerLength = 0;
pStubMsg->fInDontFree = 0;
pStubMsg->fDontCallFreeInst = 0;
pStubMsg->fInOnlyParam = 0;
pStubMsg->fHasReturn = 0;
pStubMsg->fHasExtensions = 0;
pStubMsg->fHasNewCorrDesc = 0;
@ -142,7 +140,7 @@ unsigned char* WINAPI NdrServerInitializeNew( PRPC_MESSAGE pRpcMsg, PMIDL_STUB_M
pStubMsg->fHasMemoryValidateCallback = 0;
pStubMsg->fInFree = 0;
pStubMsg->fNeedMCCP = 0;
pStubMsg->fUnused = 0;
pStubMsg->fUnused2 = 0;
pStubMsg->dwDestContext = MSHCTX_DIFFERENTMACHINE;
pStubMsg->pvDestContext = NULL;
pStubMsg->pRpcChannelBuffer = NULL;

View File

@ -686,9 +686,9 @@ static void test_pack_MIDL_SYNTAX_INFO(void)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 56)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved1, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved1, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved1, 64)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pMethodProperties, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pMethodProperties, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pMethodProperties, 64)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 8)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 8)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 72)
@ -1548,9 +1548,9 @@ static void test_pack_MIDL_SYNTAX_INFO(void)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 36)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved1, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved1, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved1, 40)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pMethodProperties, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pMethodProperties, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pMethodProperties, 40)
TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 4)
TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 4)
TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 44)

View File

@ -1728,11 +1728,11 @@ static void test_common_stub_data( const char *prefix, const MIDL_STUB_MESSAGE *
ok(stubMsg->fBufferValid == 0,
"%s: fBufferValid should have been set to 0 instead of %d\n", prefix, stubMsg->fBufferValid);
TEST_ZERO(fNeedMCCP, "%d");
ok(stubMsg->fUnused == 0 ||
stubMsg->fUnused == -2, /* Vista */
"%s: fUnused should have been set to 0 or -2 instead of %d\n", prefix, stubMsg->fUnused);
ok(stubMsg->fUnused2 == 0xffffcccc, "%s: fUnused2 should have been 0xffffcccc instead of 0x%x\n",
prefix, stubMsg->fUnused2);
ok(stubMsg->fUnused2 == 0 ||
stubMsg->fUnused2 == -2, /* Vista */
"%s: fUnused2 should have been set to 0 or -2 instead of %d\n", prefix, stubMsg->fUnused2);
ok(stubMsg->fUnused3 == 0xffffcccc, "%s: fUnused3 should have been 0xffffcccc instead of 0x%x\n",
prefix, stubMsg->fUnused3);
ok(stubMsg->dwDestContext == MSHCTX_DIFFERENTMACHINE,
"%s: dwDestContext should have been MSHCTX_DIFFERENTMACHINE instead of %ld\n",
prefix, stubMsg->dwDestContext);

View File

@ -71,6 +71,11 @@ typedef INT64 hyper;
typedef UINT64 MIDL_uhyper;
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_VAR_ENTRY WINAPIV
#define NDR_SHAREABLE static
@ -179,7 +184,7 @@ typedef struct _MIDL_STUB_MESSAGE
ULONG PointerLength;
unsigned int fInDontFree:1;
unsigned int fDontCallFreeInst:1;
unsigned int fInOnlyParam:1;
unsigned int fUnused1 :1;
unsigned int fHasReturn:1;
unsigned int fHasExtensions:1;
unsigned int fHasNewCorrDesc:1;
@ -190,8 +195,8 @@ typedef struct _MIDL_STUB_MESSAGE
unsigned int fHasMemoryValidateCallback:1;
unsigned int fInFree:1;
unsigned int fNeedMCCP:1;
int fUnused:3;
int fUnused2:16;
int fUnused2:3;
int fUnused3:16;
DWORD dwDestContext;
void *pvDestContext;
NDR_SCONTEXT *SavedContextHandles;
@ -303,6 +308,39 @@ typedef struct _COMM_FAULT_OFFSETS
short FaultOffset;
} 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
{
void *RpcInterfaceInformation;
@ -326,22 +364,36 @@ typedef struct _MIDL_STUB_DESC
const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
ULONG_PTR mFlags;
ULONG_PTR Reserved3;
ULONG_PTR Reserved4;
ULONG_PTR Reserved5;
const NDR_CS_ROUTINES *CsRoutineTables;
void *ProxyServerInfo;
const NDR_EXPR_DESC *pExprInfo;
} MIDL_STUB_DESC;
typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC;
typedef struct _MIDL_FORMAT_STRING
{
short Pad;
#if defined(__GNUC__)
unsigned char Format[0];
#else
unsigned char Format[1];
#endif
unsigned char Format[];
} 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
{
RPC_SYNTAX_IDENTIFIER TransferSyntax;
@ -350,7 +402,7 @@ typedef struct _MIDL_SYNTAX_INFO
const unsigned short* FmtStringOffset;
PFORMAT_STRING TypeString;
const void* aUserMarshalQuadruple;
ULONG_PTR pReserved1;
const MIDL_INTERFACE_METHOD_PROPERTIES *pMethodProperties;
ULONG_PTR pReserved2;
} MIDL_SYNTAX_INFO, *PMIDL_SYNTAX_INFO;
@ -443,11 +495,6 @@ typedef struct _FULL_PTR_XLAT_TABLES {
struct IRpcStubBuffer;
#ifndef _ERROR_STATUS_T_DEFINED
typedef ULONG error_status_t;
#define _ERROR_STATUS_T_DEFINED
#endif
typedef void * NDR_CCONTEXT;
typedef struct _SCONTEXT_QUEUE {

View File

@ -17,8 +17,7 @@
*/
#ifndef __RPCPROXY_H_VERSION__
/* FIXME: Find an appropriate version number. I guess something is better than nothing */
#define __RPCPROXY_H_VERSION__ ( 399 )
#define __RPCPROXY_H_VERSION__ (477)
#endif
#ifndef __WINE_RPCPROXY_H
@ -78,11 +77,7 @@ typedef struct tagCInterfaceProxyHeader
typedef struct tagCInterfaceProxyVtbl
{
CInterfaceProxyHeader header;
#if defined(__GNUC__)
void *Vtbl[0];
#else
void *Vtbl[1];
#endif
void *Vtbl[];
} CInterfaceProxyVtbl;
typedef void (__RPC_STUB *PRPC_STUB_FUNCTION)(