Author: cwittich Date: Sat Feb 7 01:52:12 2009 New Revision: 39450
URL: http://svn.reactos.org/svn/reactos?rev=39450&view=rev Log: sync oleaut32 to wine 1.1.14 sync rpcrt4 to wine 1.1.14 except UuidCreate in rpcrt4_main.c as it isn't compatible to our headers
Modified: trunk/reactos/dll/win32/oleaut32/hash.c trunk/reactos/dll/win32/oleaut32/olepicture.c trunk/reactos/dll/win32/oleaut32/tmarshal.c trunk/reactos/dll/win32/oleaut32/typelib.c trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c trunk/reactos/dll/win32/rpcrt4/ndr_stubless.c trunk/reactos/dll/win32/rpcrt4/rpc_binding.h trunk/reactos/dll/win32/rpcrt4/rpc_message.c trunk/reactos/dll/win32/rpcrt4/rpc_message.h trunk/reactos/dll/win32/rpcrt4/rpc_transport.c trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec trunk/reactos/include/psdk/rpcdce.h trunk/reactos/include/psdk/rpcdcep.h trunk/reactos/include/psdk/rpcndr.h
Modified: trunk/reactos/dll/win32/oleaut32/hash.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oleaut32/hash.c?r... ============================================================================== --- trunk/reactos/dll/win32/oleaut32/hash.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/oleaut32/hash.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -510,7 +510,7 @@ ULONG nHiWord, nLoWord = 0x0deadbee; const unsigned char *str = (const unsigned char *)lpStr, *pnLookup = NULL;
- TRACE("(%d, %d, %s) %s\n", skind, lcid, debugstr_a(lpStr), + TRACE("(%d, 0x%x, %s) %s\n", skind, lcid, debugstr_a(lpStr), (skind == SYS_WIN16) ? "SYS_WIN16" : (skind == SYS_WIN32) ? "SYS_WIN32" : "");
if (!str)
Modified: trunk/reactos/dll/win32/oleaut32/olepicture.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oleaut32/olepictu... ============================================================================== --- trunk/reactos/dll/win32/oleaut32/olepicture.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/oleaut32/olepicture.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -710,17 +710,27 @@
case PICTYPE_METAFILE: { - POINT prevOrg; - SIZE prevExt; + POINT prevOrg, prevWndOrg; + SIZE prevExt, prevWndExt; int oldmode;
+ /* Render the WMF to the appropriate location by setting the + appropriate ratio between "device units" and "logical units" */ oldmode = SetMapMode(hdc, MM_ANISOTROPIC); + /* For the "source rectangle" the y-axis must be inverted */ + SetWindowOrgEx(hdc, xSrc, This->himetricHeight-ySrc, &prevWndOrg); + SetWindowExtEx(hdc, cxSrc, -cySrc, &prevWndExt); + /* For the "destination rectangle" no inversion is necessary */ SetViewportOrgEx(hdc, x, y, &prevOrg); SetViewportExtEx(hdc, cx, cy, &prevExt);
if (!PlayMetaFile(hdc, This->desc.u.wmf.hmeta)) ERR("PlayMetaFile failed!\n");
+ /* We're done, restore the DC to the previous settings for converting + logical units to device units */ + SetWindowExtEx(hdc, prevWndExt.cx, prevWndExt.cy, NULL); + SetWindowOrgEx(hdc, prevWndOrg.x, prevWndOrg.y, NULL); SetViewportExtEx(hdc, prevExt.cx, prevExt.cy, NULL); SetViewportOrgEx(hdc, prevOrg.x, prevOrg.y, NULL); SetMapMode(hdc, oldmode);
Modified: trunk/reactos/dll/win32/oleaut32/tmarshal.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oleaut32/tmarshal... ============================================================================== --- trunk/reactos/dll/win32/oleaut32/tmarshal.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/oleaut32/tmarshal.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -606,10 +606,15 @@ marshal_state *buf) { HRESULT hres = S_OK; + VARTYPE vartype;
TRACE("(tdesc.vt %s)\n",debugstr_vt(tdesc->vt));
- switch (tdesc->vt) { + vartype = tdesc->vt; + if ((vartype & 0xf000) == VT_ARRAY) + vartype = VT_SAFEARRAY; + + switch (vartype) { case VT_EMPTY: /* nothing. empty variant for instance */ return S_OK; case VT_I8: @@ -919,11 +924,16 @@ marshal_state *buf) { HRESULT hres = S_OK; + VARTYPE vartype;
TRACE("vt %s at %p\n",debugstr_vt(tdesc->vt),arg);
+ vartype = tdesc->vt; + if ((vartype & 0xf000) == VT_ARRAY) + vartype = VT_SAFEARRAY; + while (1) { - switch (tdesc->vt) { + switch (vartype) { case VT_EMPTY: if (debugout) TRACE_(olerelay)("<empty>\n"); return S_OK;
Modified: trunk/reactos/dll/win32/oleaut32/typelib.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oleaut32/typelib.... ============================================================================== --- trunk/reactos/dll/win32/oleaut32/typelib.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/oleaut32/typelib.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -1887,7 +1887,7 @@ (*pptfd)->funcdesc.callconv = (pFuncRec->FKCCIC) >> 8 & 0xF; (*pptfd)->funcdesc.cParams = pFuncRec->nrargs ; (*pptfd)->funcdesc.cParamsOpt = pFuncRec->nroargs ; - (*pptfd)->funcdesc.oVft = pFuncRec->VtableOffset ; + (*pptfd)->funcdesc.oVft = (pFuncRec->VtableOffset * sizeof(void *))/4; (*pptfd)->funcdesc.wFuncFlags = LOWORD(pFuncRec->Flags) ;
MSFT_GetTdesc(pcx, @@ -2146,7 +2146,7 @@ ptiRet->TypeAttr.wMajorVerNum=LOWORD(tiBase.version); ptiRet->TypeAttr.wMinorVerNum=HIWORD(tiBase.version); ptiRet->TypeAttr.cImplTypes=tiBase.cImplTypes; - ptiRet->TypeAttr.cbSizeVft=tiBase.cbSizeVft; /* FIXME: this is only the non inherited part */ + ptiRet->TypeAttr.cbSizeVft=(tiBase.cbSizeVft * sizeof(void *))/4; /* FIXME: this is only the non inherited part */ if(ptiRet->TypeAttr.typekind == TKIND_ALIAS) MSFT_GetTdesc(pcx, tiBase.datatype1, &ptiRet->TypeAttr.tdescAlias, ptiRet); @@ -3908,7 +3908,7 @@
(*ppTypeInfoImpl)->TypeAttr.cbAlignment = pTITail->cbAlignment; (*ppTypeInfoImpl)->TypeAttr.cbSizeInstance = pTITail->cbSizeInstance; - (*ppTypeInfoImpl)->TypeAttr.cbSizeVft = pTITail->cbSizeVft; + (*ppTypeInfoImpl)->TypeAttr.cbSizeVft = (pTITail->cbSizeVft * sizeof(void *))/4;
switch(pTIHeader->typekind) { case TKIND_ENUM: @@ -4981,9 +4981,9 @@ &This->TypeAttr.tdescAlias, (void *)(*ppTypeAttr + 1));
if((*ppTypeAttr)->typekind == TKIND_DISPATCH) { - (*ppTypeAttr)->cFuncs = (*ppTypeAttr)->cbSizeVft / 4; /* This should include all the inherited - funcs */ - (*ppTypeAttr)->cbSizeVft = 28; /* This is always the size of IDispatch's vtbl */ + /* This should include all the inherited funcs */ + (*ppTypeAttr)->cFuncs = (*ppTypeAttr)->cbSizeVft / sizeof(void *); + (*ppTypeAttr)->cbSizeVft = 7 * sizeof(void *); /* This is always the size of IDispatch's vtbl */ (*ppTypeAttr)->wTypeFlags &= ~TYPEFLAG_FOLEAUTOMATION; } return S_OK;
Modified: trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/ndr_marsha... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -121,6 +121,13 @@ static unsigned char *WINAPI NdrContextHandleMarshall(PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING); static void WINAPI NdrContextHandleBufferSize(PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING); static unsigned char *WINAPI NdrContextHandleUnmarshall(PMIDL_STUB_MESSAGE, unsigned char **, PFORMAT_STRING, unsigned char); + +static unsigned char *WINAPI NdrRangeMarshall(PMIDL_STUB_MESSAGE,unsigned char *, PFORMAT_STRING); +static void WINAPI NdrRangeBufferSize(PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING); +static ULONG WINAPI NdrRangeMemorySize(PMIDL_STUB_MESSAGE, PFORMAT_STRING); +static void WINAPI NdrRangeFree(PMIDL_STUB_MESSAGE, unsigned char *, PFORMAT_STRING); + +static ULONG WINAPI NdrByteCountPointerMemorySize(PMIDL_STUB_MESSAGE, PFORMAT_STRING);
const NDR_MARSHALL NdrMarshaller[NDR_TABLE_SIZE] = { 0, @@ -3141,11 +3148,9 @@ } case RPC_FC_ALIGNM4: ALIGN_LENGTH(size, 4); - ALIGN_POINTER(pStubMsg->Buffer, 4); break; case RPC_FC_ALIGNM8: ALIGN_LENGTH(size, 8); - ALIGN_POINTER(pStubMsg->Buffer, 8); break; case RPC_FC_STRUCTPAD1: case RPC_FC_STRUCTPAD2: @@ -4328,6 +4333,56 @@
pStubMsg->StubDesc->aUserMarshalQuadruple[index].pfnFree( &umcb.Flags, pMemory); +} + +/*********************************************************************** + * NdrGetUserMarshalInfo [RPCRT4.@] + */ +RPC_STATUS RPC_ENTRY NdrGetUserMarshalInfo(ULONG *flags, ULONG level, NDR_USER_MARSHAL_INFO *umi) +{ + USER_MARSHAL_CB *umcb = CONTAINING_RECORD(flags, USER_MARSHAL_CB, Flags); + + TRACE("(%p,%u,%p)\n", flags, level, umi); + + if (level != 1) + return RPC_S_INVALID_ARG; + + memset(&umi->Level1, 0, sizeof(umi->Level1)); + umi->InformationLevel = level; + + if (umcb->Signature != USER_MARSHAL_CB_SIGNATURE) + return RPC_S_INVALID_ARG; + + umi->Level1.pfnAllocate = umcb->pStubMsg->pfnAllocate; + umi->Level1.pfnFree = umcb->pStubMsg->pfnFree; + umi->Level1.pRpcChannelBuffer = umcb->pStubMsg->pRpcChannelBuffer; + + switch (umcb->CBType) + { + case USER_MARSHAL_CB_MARSHALL: + case USER_MARSHAL_CB_UNMARSHALL: + { + RPC_MESSAGE *msg = umcb->pStubMsg->RpcMsg; + unsigned char *buffer_start = msg->Buffer; + unsigned char *buffer_end = + (unsigned char *)msg->Buffer + msg->BufferLength; + + if (umcb->pStubMsg->Buffer < buffer_start || + umcb->pStubMsg->Buffer > buffer_end) + return ERROR_INVALID_USER_BUFFER; + + umi->Level1.Buffer = umcb->pStubMsg->Buffer; + umi->Level1.BufferSize = buffer_end - umcb->pStubMsg->Buffer; + break; + } + case USER_MARSHAL_CB_BUFFER_SIZE: + case USER_MARSHAL_CB_FREE: + break; + default: + WARN("unrecognised CBType %d\n", umcb->CBType); + } + + return RPC_S_OK; }
/*********************************************************************** @@ -6002,10 +6057,10 @@ }
/*********************************************************************** - * NdrByteCountPointerMemorySize [RPCRT4.@] - */ -ULONG WINAPI NdrByteCountPointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg, - PFORMAT_STRING pFormat) + * NdrByteCountPointerMemorySize [internal] + */ +static ULONG WINAPI NdrByteCountPointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg, + PFORMAT_STRING pFormat) { FIXME("stub\n"); return 0; @@ -6077,7 +6132,7 @@ /*********************************************************************** * NdrRangeMarshall [internal] */ -unsigned char *WINAPI NdrRangeMarshall( +static unsigned char *WINAPI NdrRangeMarshall( PMIDL_STUB_MESSAGE pStubMsg, unsigned char *pMemory, PFORMAT_STRING pFormat) @@ -6100,7 +6155,7 @@ }
/*********************************************************************** - * NdrRangeUnmarshall + * NdrRangeUnmarshall [RPCRT4.@] */ unsigned char *WINAPI NdrRangeUnmarshall( PMIDL_STUB_MESSAGE pStubMsg, @@ -6200,7 +6255,7 @@ /*********************************************************************** * NdrRangeBufferSize [internal] */ -void WINAPI NdrRangeBufferSize( +static void WINAPI NdrRangeBufferSize( PMIDL_STUB_MESSAGE pStubMsg, unsigned char *pMemory, PFORMAT_STRING pFormat) @@ -6223,7 +6278,7 @@ /*********************************************************************** * NdrRangeMemorySize [internal] */ -ULONG WINAPI NdrRangeMemorySize( +static ULONG WINAPI NdrRangeMemorySize( PMIDL_STUB_MESSAGE pStubMsg, PFORMAT_STRING pFormat) { @@ -6244,7 +6299,7 @@ /*********************************************************************** * NdrRangeFree [internal] */ -void WINAPI NdrRangeFree(PMIDL_STUB_MESSAGE pStubMsg, +static void WINAPI NdrRangeFree(PMIDL_STUB_MESSAGE pStubMsg, unsigned char *pMemory, PFORMAT_STRING pFormat) {
Modified: trunk/reactos/dll/win32/rpcrt4/ndr_stubless.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/ndr_stuble... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/ndr_stubless.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/ndr_stubless.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -583,12 +583,7 @@
TRACE("pStubDesc %p, pFormat %p, ...\n", pStubDesc, pFormat);
- /* Later NDR language versions probably won't be backwards compatible */ - if (pStubDesc->Version > 0x50002) - { - FIXME("Incompatible stub description version: 0x%x\n", pStubDesc->Version); - RpcRaiseException(RPC_X_WRONG_STUB_VERSION); - } + TRACE("NDR Version: 0x%x\n", pStubDesc->Version);
if (pProcHeader->Oi_flags & RPC_FC_PROC_OIF_RPCFLAGS) { @@ -1293,12 +1288,7 @@ pFormat = pServerInfo->ProcString + pServerInfo->FmtStringOffset[pRpcMsg->ProcNum]; pProcHeader = (const NDR_PROC_HEADER *)&pFormat[0];
- /* Later NDR language versions probably won't be backwards compatible */ - if (pStubDesc->Version > 0x50002) - { - FIXME("Incompatible stub description version: 0x%x\n", pStubDesc->Version); - RpcRaiseException(RPC_X_WRONG_STUB_VERSION); - } + TRACE("NDR Version: 0x%x\n", pStubDesc->Version);
/* create the full pointer translation tables, if requested */ if (pProcHeader->Oi_flags & RPC_FC_PROC_OIF_FULLPTR)
Modified: trunk/reactos/dll/win32/rpcrt4/rpc_binding.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpc_bindin... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/rpc_binding.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/rpc_binding.h [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -139,7 +139,6 @@ RPC_STATUS RPCRT4_DestroyConnection(RpcConnection* Connection); RPC_STATUS RPCRT4_OpenClientConnection(RpcConnection* Connection); RPC_STATUS RPCRT4_CloseConnection(RpcConnection* Connection); -RPC_STATUS RPCRT4_SpawnConnection(RpcConnection** Connection, RpcConnection* OldConnection);
RPC_STATUS RPCRT4_ResolveBinding(RpcBinding* Binding, LPCSTR Endpoint); RPC_STATUS RPCRT4_SetBindingObject(RpcBinding* Binding, const UUID* ObjectUuid);
Modified: trunk/reactos/dll/win32/rpcrt4/rpc_message.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpc_messag... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/rpc_message.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/rpc_message.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -321,7 +321,7 @@ } }
-RPC_STATUS NCA2RPC_STATUS(NCA_STATUS status) +static RPC_STATUS NCA2RPC_STATUS(NCA_STATUS status) { switch (status) { @@ -687,7 +687,7 @@ }
/* validates version and frag_len fields */ -RPC_STATUS RPCRT4_ValidateCommonHeader(const RpcPktCommonHdr *hdr) +static RPC_STATUS RPCRT4_ValidateCommonHeader(const RpcPktCommonHdr *hdr) { DWORD hdr_length;
@@ -720,7 +720,7 @@ * * Receive a fragment from a connection. */ -RPC_STATUS RPCRT4_receive_fragment(RpcConnection *Connection, RpcPktHdr **Header, void **Payload) +static RPC_STATUS RPCRT4_receive_fragment(RpcConnection *Connection, RpcPktHdr **Header, void **Payload) { RPC_STATUS status; DWORD hdr_length;
Modified: trunk/reactos/dll/win32/rpcrt4/rpc_message.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpc_messag... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/rpc_message.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/rpc_message.h [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -35,7 +35,6 @@ RPC_STATUS RPCRT4_Receive(RpcConnection *Connection, RpcPktHdr **Header, PRPC_MESSAGE pMsg); RPC_STATUS RPCRT4_ReceiveWithAuth(RpcConnection *Connection, RpcPktHdr **Header, PRPC_MESSAGE pMsg, unsigned char **auth_data_out, unsigned long *auth_length_out); NCA_STATUS RPC2NCA_STATUS(RPC_STATUS status); -RPC_STATUS NCA2RPC_STATUS(NCA_STATUS status); RPC_STATUS RPCRT4_AuthorizeConnection(RpcConnection* conn, BYTE *challenge, ULONG count);
#endif
Modified: trunk/reactos/dll/win32/rpcrt4/rpc_transport.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpc_transp... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/rpc_transport.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/rpc_transport.c [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -94,6 +94,8 @@ #endif
WINE_DEFAULT_DEBUG_CHANNEL(rpc); + +static RPC_STATUS RPCRT4_SpawnConnection(RpcConnection** Connection, RpcConnection* OldConnection);
/**** ncacn_np support ****/
@@ -1563,8 +1565,7 @@ return RPC_S_OK; }
- -RPC_STATUS RPCRT4_SpawnConnection(RpcConnection** Connection, RpcConnection* OldConnection) +static RPC_STATUS RPCRT4_SpawnConnection(RpcConnection** Connection, RpcConnection* OldConnection) { RPC_STATUS err;
Modified: trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpcrt4.spe... ============================================================================== --- trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec [iso-8859-1] (original) +++ trunk/reactos/dll/win32/rpcrt4/rpcrt4.spec [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -203,7 +203,7 @@ @ stub NdrGetSimpleTypeBufferSize # wxp @ stub NdrGetSimpleTypeMemorySize # wxp @ stub NdrGetTypeFlags # wxp -@ stub NdrGetUserMarshallInfo +@ stdcall NdrGetUserMarshalInfo(ptr long ptr) @ stub NdrHardStructBufferSize #(ptr ptr ptr) @ stub NdrHardStructFree #(ptr ptr ptr) @ stub NdrHardStructMarshall #(ptr ptr ptr)
Modified: trunk/reactos/include/psdk/rpcdce.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/rpcdce.h?rev=3... ============================================================================== --- trunk/reactos/include/psdk/rpcdce.h [iso-8859-1] (original) +++ trunk/reactos/include/psdk/rpcdce.h [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -54,14 +54,14 @@
typedef struct _RPC_BINDING_VECTOR { - unsigned long Count; + ULONG Count; RPC_BINDING_HANDLE BindingH[1]; } RPC_BINDING_VECTOR; #define rpc_binding_vector_t RPC_BINDING_VECTOR
typedef struct _UUID_VECTOR { - unsigned long Count; + ULONG Count; UUID *Uuid[1]; } UUID_VECTOR; #define uuid_vector_t UUID_VECTOR @@ -75,14 +75,14 @@
typedef struct { - unsigned long Count; + ULONG Count; RPC_IF_ID *IfId[1]; } RPC_IF_ID_VECTOR;
typedef struct { unsigned int Count; - unsigned long Stats[1]; + ULONG Stats[1]; } RPC_STATS_VECTOR;
typedef I_RPC_HANDLE *RPC_EP_INQ_HANDLE; @@ -195,66 +195,66 @@ typedef struct _RPC_POLICY { unsigned int Length; - unsigned long EndpointFlags; - unsigned long NICFlags; + ULONG EndpointFlags; + ULONG NICFlags; } RPC_POLICY, *PRPC_POLICY;
typedef struct _SEC_WINNT_AUTH_IDENTITY_W { unsigned short* User; - unsigned long UserLength; + ULONG UserLength; unsigned short* Domain; - unsigned long DomainLength; + ULONG DomainLength; unsigned short* Password; - unsigned long PasswordLength; - unsigned long Flags; + ULONG PasswordLength; + ULONG Flags; } SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W;
typedef struct _SEC_WINNT_AUTH_IDENTITY_A { unsigned char* User; - unsigned long UserLength; + ULONG UserLength; unsigned char* Domain; - unsigned long DomainLength; + ULONG DomainLength; unsigned char* Password; - unsigned long PasswordLength; - unsigned long Flags; + ULONG PasswordLength; + ULONG Flags; } SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A;
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_W { SEC_WINNT_AUTH_IDENTITY_W *TransportCredentials; - unsigned long Flags; - unsigned long AuthenticationTarget; - unsigned long NumberOfAuthnSchemes; - unsigned long *AuthnSchemes; + ULONG Flags; + ULONG AuthenticationTarget; + ULONG NumberOfAuthnSchemes; + ULONG *AuthnSchemes; unsigned short *ServerCertificateSubject; } RPC_HTTP_TRANSPORT_CREDENTIALS_W, *PRPC_HTTP_TRANSPORT_CREDENTIALS_W;
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A { SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials; - unsigned long Flags; - unsigned long AuthenticationTarget; - unsigned long NumberOfAuthnSchemes; - unsigned long *AuthnSchemes; + ULONG Flags; + ULONG AuthenticationTarget; + ULONG NumberOfAuthnSchemes; + ULONG *AuthnSchemes; unsigned char *ServerCertificateSubject; } RPC_HTTP_TRANSPORT_CREDENTIALS_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_A;
typedef struct _RPC_SECURITY_QOS { - unsigned long Version; - unsigned long Capabilities; - unsigned long IdentityTracking; - unsigned long ImpersonationType; + ULONG Version; + ULONG Capabilities; + ULONG IdentityTracking; + ULONG ImpersonationType; } RPC_SECURITY_QOS, *PRPC_SECURITY_QOS;
typedef struct _RPC_SECURITY_QOS_V2_W { - unsigned long Version; - unsigned long Capabilities; - unsigned long IdentityTracking; - unsigned long ImpersonationType; - unsigned long AdditionalSecurityInfoType; + ULONG Version; + ULONG Capabilities; + ULONG IdentityTracking; + ULONG ImpersonationType; + ULONG AdditionalSecurityInfoType; union { RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials; @@ -263,11 +263,11 @@
typedef struct _RPC_SECURITY_QOS_V2_A { - unsigned long Version; - unsigned long Capabilities; - unsigned long IdentityTracking; - unsigned long ImpersonationType; - unsigned long AdditionalSecurityInfoType; + ULONG Version; + ULONG Capabilities; + ULONG IdentityTracking; + ULONG ImpersonationType; + ULONG AdditionalSecurityInfoType; union { RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
Modified: trunk/reactos/include/psdk/rpcdcep.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/rpcdcep.h?rev=... ============================================================================== --- trunk/reactos/include/psdk/rpcdcep.h [iso-8859-1] (original) +++ trunk/reactos/include/psdk/rpcdcep.h [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -36,7 +36,7 @@ typedef struct _RPC_MESSAGE { RPC_BINDING_HANDLE Handle; - unsigned long DataRepresentation; + ULONG DataRepresentation; void* Buffer; unsigned int BufferLength; unsigned int ProcNum; @@ -45,7 +45,7 @@ void* ReservedForRuntime; RPC_MGR_EPV* ManagerEpv; void* ImportContext; - unsigned long RpcFlags; + ULONG RpcFlags; } RPC_MESSAGE, *PRPC_MESSAGE;
/* or'ed with ProcNum */ @@ -202,13 +202,13 @@ typedef RPC_STATUS (*RPC_BLOCKING_FN)(void* hWnd, void* Context, void* hSyncEvent);
RPCRTAPI RPC_STATUS RPC_ENTRY - I_RpcBindingSetAsync( RPC_BINDING_HANDLE Binding, RPC_BLOCKING_FN BlockingFn, unsigned long ServerTid ); + I_RpcBindingSetAsync( RPC_BINDING_HANDLE Binding, RPC_BLOCKING_FN BlockingFn, ULONG ServerTid );
RPCRTAPI RPC_STATUS RPC_ENTRY I_RpcSetThreadParams( int fClientFree, void* Context, void* hWndClient );
RPCRTAPI UINT RPC_ENTRY - I_RpcWindowProc( void* hWnd, unsigned int Message, unsigned int wParam, unsigned long lParam ); + I_RpcWindowProc( void* hWnd, unsigned int Message, unsigned int wParam, ULONG lParam );
#endif
Modified: trunk/reactos/include/psdk/rpcndr.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/rpcndr.h?rev=3... ============================================================================== --- trunk/reactos/include/psdk/rpcndr.h [iso-8859-1] (original) +++ trunk/reactos/include/psdk/rpcndr.h [iso-8859-1] Sat Feb 7 01:52:12 2009 @@ -144,7 +144,7 @@ struct NDR_POINTER_QUEUE_STATE;
typedef unsigned char *RPC_BUFPTR; -typedef unsigned long RPC_LENGTH; +typedef ULONG RPC_LENGTH; typedef void (__RPC_USER *EXPR_EVAL)(struct _MIDL_STUB_MESSAGE *); typedef const unsigned char *PFORMAT_STRING;
@@ -562,6 +562,18 @@ RPCRTAPI void RPC_ENTRY NdrSimpleTypeUnmarshall( PMIDL_STUB_MESSAGE pStubMsg, unsigned char* pMemory, unsigned char FormatChar );
+RPCRTAPI unsigned char* RPC_ENTRY + NdrByteCountPointerMarshall( PMIDL_STUB_MESSAGE pStubMsg, unsigned char* pMemory, PFORMAT_STRING pFormat ); +RPCRTAPI unsigned char* RPC_ENTRY + NdrByteCountPointerUnmarshall( PMIDL_STUB_MESSAGE pStubMsg, unsigned char** ppMemory, PFORMAT_STRING pFormat, unsigned char fMustAlloc ); +RPCRTAPI void RPC_ENTRY + NdrByteCountPointerBufferSize( PMIDL_STUB_MESSAGE pStubMsg, unsigned char* pMemory, PFORMAT_STRING pFormat ); +RPCRTAPI void RPC_ENTRY + NdrByteCountPointerFree( PMIDL_STUB_MESSAGE pStubMsg, unsigned char* pMemory, PFORMAT_STRING pFormat ); + +RPCRTAPI unsigned char* RPC_ENTRY + NdrRangeUnmarshall( PMIDL_STUB_MESSAGE pStubMsg, unsigned char** ppMemory, PFORMAT_STRING pFormat, unsigned char fMustAlloc ); + /* while MS declares each prototype separately, I prefer to use macros for this kind of thing instead */ #define SIMPLE_TYPE_MARSHAL(type) \ RPCRTAPI unsigned char* RPC_ENTRY \ @@ -590,11 +602,9 @@ TYPE_MARSHAL(ComplexArray) TYPE_MARSHAL(EncapsulatedUnion) TYPE_MARSHAL(NonEncapsulatedUnion) -TYPE_MARSHAL(ByteCountPointer) TYPE_MARSHAL(XmitOrRepAs) TYPE_MARSHAL(UserMarshal) TYPE_MARSHAL(InterfacePointer) -TYPE_MARSHAL(Range)
SIMPLE_TYPE_MARSHAL(ConformantString) SIMPLE_TYPE_MARSHAL(NonConformantString)