#define small char
typedef unsigned char byte;
-#define hyper __int64
-#define MIDL_uhyper unsigned __int64
+typedef INT64 hyper;
+typedef UINT64 MIDL_uhyper;
typedef unsigned char boolean;
#define __RPC_CALLEE WINAPI
#define midl_user_free MIDL_user_free
#define midl_user_allocate MIDL_user_allocate
+void * __RPC_USER MIDL_user_allocate(size_t size);
+void __RPC_USER MIDL_user_free( void * );
+
#define NdrFcShort(s) (unsigned char)(s & 0xff), (unsigned char)(s >> 8)
#define NdrFcLong(s) (unsigned char)(s & 0xff), (unsigned char)((s & 0x0000ff00) >> 8), \
(unsigned char)((s & 0x00ff0000) >> 16), (unsigned char)(s >> 24)
(RpcExceptionCode() == RPC_X_BAD_STUB_DATA) || \
(RpcExceptionCode() == RPC_S_INVALID_BOUND))
-typedef struct _NDR_SCONTEXT
+typedef struct tagNDR_SCONTEXT
{
void *pad[2];
void *userContext;
struct _FULL_PTR_XLAT_TABLES *FullPtrXlatTables;
ULONG FullPtrRefId;
ULONG PointerLength;
- int fInDontFree:1;
- int fDontCallFreeInst:1;
- int fInOnlyParam:1;
- int fHasReturn:1;
- int fHasExtensions:1;
- int fHasNewCorrDesc:1;
- int fIsIn:1;
- int fIsOut:1;
- int fIsOicf:1;
- int fBufferValid:1;
- int fHasMemoryValidateCallback:1;
- int fInFree:1;
- int fNeedMCCP:1;
+ unsigned int fInDontFree:1;
+ unsigned int fDontCallFreeInst:1;
+ unsigned int fInOnlyParam:1;
+ unsigned int fHasReturn:1;
+ unsigned int fHasExtensions:1;
+ unsigned int fHasNewCorrDesc:1;
+ unsigned int fIsIn:1;
+ unsigned int fIsOut:1;
+ unsigned int fIsOicf:1;
+ unsigned int fBufferValid:1;
+ unsigned int fHasMemoryValidateCallback:1;
+ unsigned int fInFree:1;
+ unsigned int fNeedMCCP:1;
int fUnused:3;
int fUnused2:16;
DWORD dwDestContext;
typedef void (__RPC_API *STUB_THUNK)( PMIDL_STUB_MESSAGE );
+#ifdef WINE_STRICT_PROTOTYPES
+typedef LONG (__RPC_API *SERVER_ROUTINE)(void);
+#else
typedef LONG (__RPC_API *SERVER_ROUTINE)();
+#endif
typedef struct _MIDL_SERVER_INFO_
{
RPCRTAPI unsigned char* RPC_ENTRY
NdrUserMarshalSimpleTypeConvert( ULONG *pFlags, unsigned char *pBuffer, unsigned char FormatChar );
+#ifdef __GCC__
/* Note: this should return a CLIENT_CALL_RETURN, but calling convention for
* returning structures/unions is different between Windows and gcc on i386. */
LONG_PTR RPC_VAR_ENTRY
NdrAsyncClientCall( PMIDL_STUB_DESC pStubDescriptor, PFORMAT_STRING pFormat, ... );
LONG_PTR RPC_VAR_ENTRY
NdrDcomAsyncClientCall( PMIDL_STUB_DESC pStubDescriptor, PFORMAT_STRING pFormat, ... );
+#else
+CLIENT_CALL_RETURN RPC_VAR_ENTRY NdrClientCall2(
+ PMIDL_STUB_DESC pStubDescriptor,
+ PFORMAT_STRING pFormat,
+ ...
+);
+#endif
RPCRTAPI void RPC_ENTRY
NdrServerCall2( PRPC_MESSAGE pRpcMsg );