mirror of
https://github.com/reactos/reactos.git
synced 2024-07-02 10:45:24 +00:00
Autosyncing with Wine HEAD
svn path=/trunk/; revision=26520
This commit is contained in:
parent
c6e78e42c8
commit
9cea416d3b
207
reactos/dll/win32/wintrust/crypt.c
Normal file
207
reactos/dll/win32/wintrust/crypt.c
Normal file
|
@ -0,0 +1,207 @@
|
|||
/*
|
||||
* WinTrust Cryptography functions
|
||||
*
|
||||
* Copyright 2006 James Hawkins
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* 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
|
||||
*/
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "wintrust.h"
|
||||
#include "mscat.h"
|
||||
#include "mssip.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(wintrust);
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminAcquireContext (WINTRUST.@)
|
||||
*
|
||||
* Get a catalog administrator context handle.
|
||||
*
|
||||
* PARAMS
|
||||
* catAdmin [O] Pointer to the context handle.
|
||||
* sysSystem [I] Pointer to a GUID for the needed subsystem.
|
||||
* dwFlags [I] Reserved.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE. catAdmin contains the context handle.
|
||||
* Failure: FALSE.
|
||||
*
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminAcquireContext(HCATADMIN* catAdmin,
|
||||
const GUID *sysSystem, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %s %x\n", catAdmin, debugstr_guid(sysSystem), dwFlags);
|
||||
|
||||
if (catAdmin) *catAdmin = (HCATADMIN)0xdeadbeef;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminCalcHashFromFileHandle (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminCalcHashFromFileHandle(HANDLE hFile, DWORD* pcbHash,
|
||||
BYTE* pbHash, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %p %p %x\n", hFile, pcbHash, pbHash, dwFlags);
|
||||
|
||||
if (pbHash && pcbHash) memset(pbHash, 0, *pcbHash);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminEnumCatalogFromHash (WINTRUST.@)
|
||||
*/
|
||||
HCATINFO WINAPI CryptCATAdminEnumCatalogFromHash(HCATADMIN hCatAdmin,
|
||||
BYTE* pbHash,
|
||||
DWORD cbHash,
|
||||
DWORD dwFlags,
|
||||
HCATINFO* phPrevCatInfo )
|
||||
{
|
||||
FIXME("%p %p %d %d %p\n", hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminReleaseContext (WINTRUST.@)
|
||||
*
|
||||
* Release a catalog administrator context handle.
|
||||
*
|
||||
* PARAMS
|
||||
* catAdmin [I] Context handle.
|
||||
* dwFlags [I] Reserved.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE.
|
||||
* Failure: FAIL.
|
||||
*
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN hCatAdmin, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %x\n", hCatAdmin, dwFlags);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminRemoveCatalog (WINTRUST.@)
|
||||
*
|
||||
* Remove a catalog file.
|
||||
*
|
||||
* PARAMS
|
||||
* catAdmin [I] Context handle.
|
||||
* pwszCatalogFile [I] Catalog file.
|
||||
* dwFlags [I] Reserved.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE.
|
||||
* Failure: FALSE.
|
||||
*
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminRemoveCatalog(HCATADMIN hCatAdmin, LPCWSTR pwszCatalogFile, DWORD dwFlags)
|
||||
{
|
||||
FIXME("%p %s %x\n", hCatAdmin, debugstr_w(pwszCatalogFile), dwFlags);
|
||||
return DeleteFileW(pwszCatalogFile);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATClose (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptCATClose(HANDLE hCatalog)
|
||||
{
|
||||
FIXME("(%p) stub\n", hCatalog);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATEnumerateMember (WINTRUST.@)
|
||||
*/
|
||||
CRYPTCATMEMBER *WINAPI CryptCATEnumerateMember(HANDLE hCatalog, CRYPTCATMEMBER* pPrevMember)
|
||||
{
|
||||
FIXME("(%p, %p) stub\n", hCatalog, pPrevMember);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATOpen (WINTRUST.@)
|
||||
*/
|
||||
HANDLE WINAPI CryptCATOpen(LPWSTR pwszFileName, DWORD fdwOpenFlags, HCRYPTPROV hProv,
|
||||
DWORD dwPublicVersion, DWORD dwEncodingType)
|
||||
{
|
||||
FIXME("(%s, %d, %ld, %d, %d) stub\n", debugstr_w(pwszFileName), fdwOpenFlags,
|
||||
hProv, dwPublicVersion, dwEncodingType);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptSIPCreateIndirectData (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptSIPCreateIndirectData(SIP_SUBJECTINFO* pSubjectInfo, DWORD* pcbIndirectData,
|
||||
SIP_INDIRECT_DATA* pIndirectData)
|
||||
{
|
||||
FIXME("(%p %p %p) stub\n", pSubjectInfo, pcbIndirectData, pIndirectData);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptSIPGetSignedDataMsg (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptSIPGetSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo, DWORD* pdwEncodingType,
|
||||
DWORD dwIndex, DWORD* pcbSignedDataMsg, BYTE* pbSignedDataMsg)
|
||||
{
|
||||
FIXME("(%p %p %d %p %p) stub\n", pSubjectInfo, pdwEncodingType, dwIndex,
|
||||
pcbSignedDataMsg, pbSignedDataMsg);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptSIPPutSignedDataMsg (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptSIPPutSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo, DWORD pdwEncodingType,
|
||||
DWORD* pdwIndex, DWORD cbSignedDataMsg, BYTE* pbSignedDataMsg)
|
||||
{
|
||||
FIXME("(%p %d %p %d %p) stub\n", pSubjectInfo, pdwEncodingType, pdwIndex,
|
||||
cbSignedDataMsg, pbSignedDataMsg);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptSIPRemoveSignedDataMsg (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptSIPRemoveSignedDataMsg(SIP_SUBJECTINFO* pSubjectInfo,
|
||||
DWORD dwIndex)
|
||||
{
|
||||
FIXME("(%p %d) stub\n", pSubjectInfo, dwIndex);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptSIPVerifyIndirectData (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptSIPVerifyIndirectData(SIP_SUBJECTINFO* pSubjectInfo,
|
||||
SIP_INDIRECT_DATA* pIndirectData)
|
||||
{
|
||||
FIXME("(%p %p) stub\n", pSubjectInfo, pIndirectData);
|
||||
|
||||
return FALSE;
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -1,4 +1,5 @@
|
|||
<module name="wintrust" type="win32dll" baseaddress="${BASEADDRESS_WINTRUST}" installbase="system32" installname="wintrust.dll" allowwarnings="true">
|
||||
<autoregister infsection="OleControlDlls" type="DllRegisterServer" />
|
||||
<importlibrary definition="wintrust.spec.def" />
|
||||
<include base="wintrust">.</include>
|
||||
<include base="ReactOS">include/reactos/wine</include>
|
||||
|
@ -10,8 +11,11 @@
|
|||
<define name="WINVER">0x501</define>
|
||||
<library>wine</library>
|
||||
<library>crypt32</library>
|
||||
<library>user32</library>
|
||||
<library>advapi32</library>
|
||||
<library>kernel32</library>
|
||||
<library>ntdll</library>
|
||||
<file>crypt.c</file>
|
||||
<file>register.c</file>
|
||||
<file>wintrust_main.c</file>
|
||||
<file>version.rc</file>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
@ stub CryptCATAdminPauseServiceForBackup
|
||||
@ stub CryptCATAdminReleaseCatalogContext
|
||||
@ stdcall CryptCATAdminReleaseContext(long long)
|
||||
@ stub CryptCATAdminRemoveCatalog
|
||||
@ stdcall CryptCATAdminRemoveCatalog(ptr wstr long)
|
||||
@ stub CryptCATAdminResolveCatalogPath
|
||||
@ stub CryptCATCDFClose
|
||||
@ stub CryptCATCDFEnumAttributes
|
||||
|
@ -18,28 +18,28 @@
|
|||
@ stub CryptCATCDFEnumMembersByCDFTagEx
|
||||
@ stub CryptCATCDFOpen
|
||||
@ stub CryptCATCatalogInfoFromContext
|
||||
@ stub CryptCATClose
|
||||
@ stdcall CryptCATClose(long)
|
||||
@ stub CryptCATEnumerateAttr
|
||||
@ stub CryptCATEnumerateCatAttr
|
||||
@ stub CryptCATEnumerateMember
|
||||
@ stdcall CryptCATEnumerateMember(long ptr)
|
||||
@ stub CryptCATGetAttrInfo
|
||||
@ stub CryptCATGetCatAttrInfo
|
||||
@ stub CryptCATGetMemberInfo
|
||||
@ stub CryptCATHandleFromStore
|
||||
@ stub CryptCATOpen
|
||||
@ stdcall CryptCATOpen(wstr long long long long)
|
||||
@ stub CryptCATPersistStore
|
||||
@ stub CryptCATPutAttrInfo
|
||||
@ stub CryptCATPutCatAttrInfo
|
||||
@ stub CryptCATPutMemberInfo
|
||||
@ stub CryptCATStoreFromHandle
|
||||
@ stub CryptCATVerifyMember
|
||||
@ stub CryptSIPCreateIndirectData
|
||||
@ stdcall CryptSIPCreateIndirectData(ptr ptr ptr)
|
||||
@ stub CryptSIPGetInfo
|
||||
@ stub CryptSIPGetRegWorkingFlags
|
||||
@ stub CryptSIPGetSignedDataMsg
|
||||
@ stub CryptSIPPutSignedDataMsg
|
||||
@ stub CryptSIPRemoveSignedDataMsg
|
||||
@ stub CryptSIPVerifyIndirectData
|
||||
@ stdcall CryptSIPGetSignedDataMsg(ptr ptr long ptr ptr)
|
||||
@ stdcall CryptSIPPutSignedDataMsg(ptr long ptr long ptr)
|
||||
@ stdcall CryptSIPRemoveSignedDataMsg(ptr long)
|
||||
@ stdcall CryptSIPVerifyIndirectData(ptr ptr)
|
||||
@ stdcall -private DllRegisterServer()
|
||||
@ stdcall -private DllUnregisterServer()
|
||||
@ stub DriverCleanupPolicy
|
||||
|
@ -111,7 +111,7 @@
|
|||
@ stdcall WinVerifyTrust(long ptr ptr)
|
||||
@ stdcall WinVerifyTrustEx(long ptr ptr)
|
||||
@ stdcall WintrustAddActionID(ptr long ptr)
|
||||
@ stub WintrustAddDefaultForUsage
|
||||
@ stdcall WintrustAddDefaultForUsage(ptr ptr)
|
||||
@ stub WintrustCertificateTrust
|
||||
@ stub WintrustGetDefaultForUsage
|
||||
@ stdcall WintrustGetRegPolicyFlags(ptr)
|
||||
|
|
|
@ -50,75 +50,6 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserved )
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminAcquireContext (WINTRUST.@)
|
||||
*
|
||||
* Get a catalog administrator context handle.
|
||||
*
|
||||
* PARAMS
|
||||
* catAdmin [O] Pointer to the context handle.
|
||||
* sysSystem [I] Pointer to a GUID for the needed subsystem.
|
||||
* dwFlags [I] Reserved.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE. catAdmin contains the context handle.
|
||||
* Failure: FAIL.
|
||||
*
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminAcquireContext(HCATADMIN* catAdmin,
|
||||
const GUID *sysSystem, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %s %lx\n", catAdmin, debugstr_guid(sysSystem), dwFlags);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminCalcHashFromFileHandle (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminCalcHashFromFileHandle(HANDLE hFile, DWORD* pcbHash,
|
||||
BYTE* pbHash, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %p %p %lx\n", hFile, pcbHash, pbHash, dwFlags);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminEnumCatalogFromHash (WINTRUST.@)
|
||||
*/
|
||||
HCATINFO WINAPI CryptCATAdminEnumCatalogFromHash(HCATADMIN hCatAdmin,
|
||||
BYTE* pbHash,
|
||||
DWORD cbHash,
|
||||
DWORD dwFlags,
|
||||
HCATINFO* phPrevCatInfo )
|
||||
{
|
||||
FIXME("%p %p %ld %ld %p\n", hCatAdmin, pbHash, cbHash, dwFlags, phPrevCatInfo);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminReleaseContext (WINTRUST.@)
|
||||
*
|
||||
* Release a catalog administrator context handle.
|
||||
*
|
||||
* PARAMS
|
||||
* catAdmin [I] Pointer to the context handle.
|
||||
* dwFlags [I] Reserved.
|
||||
*
|
||||
* RETURNS
|
||||
* Success: TRUE.
|
||||
* Failure: FAIL.
|
||||
*
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN hCatAdmin, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %lx\n", hCatAdmin, dwFlags);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* TrustIsCertificateSelfSigned (WINTRUST.@)
|
||||
*/
|
||||
|
@ -150,7 +81,7 @@ BOOL WINAPI TrustIsCertificateSelfSigned( PCCERT_CONTEXT cert )
|
|||
* Trust providers can be found at:
|
||||
* HKLM\SOFTWARE\Microsoft\Cryptography\Providers\Trust\
|
||||
*/
|
||||
LONG WINAPI WinVerifyTrust( HWND hwnd, GUID *ActionID, WINTRUST_DATA* ActionData )
|
||||
LONG WINAPI WinVerifyTrust( HWND hwnd, GUID *ActionID, LPVOID ActionData )
|
||||
{
|
||||
static const GUID gen_verify_v2 = WINTRUST_ACTION_GENERIC_VERIFY_V2;
|
||||
|
||||
|
@ -192,7 +123,7 @@ CRYPT_PROVIDER_SGNR * WINAPI WTHelperGetProvSignerFromChain(
|
|||
CRYPT_PROVIDER_DATA *pProvData, DWORD idxSigner, BOOL fCounterSigner,
|
||||
DWORD idxCounterSigner)
|
||||
{
|
||||
FIXME("%p %ld %d %ld\n", pProvData, idxSigner, fCounterSigner,
|
||||
FIXME("%p %d %d %d\n", pProvData, idxSigner, fCounterSigner,
|
||||
idxCounterSigner);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -231,6 +162,6 @@ void WINAPI WintrustGetRegPolicyFlags( DWORD* pdwPolicyFlags )
|
|||
*/
|
||||
BOOL WINAPI WintrustSetRegPolicyFlags( DWORD dwPolicyFlags)
|
||||
{
|
||||
FIXME("stub: %lx\n", dwPolicyFlags);
|
||||
FIXME("stub: %x\n", dwPolicyFlags);
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -2,9 +2,9 @@ Index: wintrust_main.c
|
|||
===================================================================
|
||||
--- wintrust_main.c (revision 23867)
|
||||
+++ wintrust_main.c (working copy)
|
||||
@@ -152,7 +152,26 @@
|
||||
@@ -83,7 +83,26 @@
|
||||
*/
|
||||
LONG WINAPI WinVerifyTrust( HWND hwnd, GUID *ActionID, WINTRUST_DATA* ActionData )
|
||||
LONG WINAPI WinVerifyTrust( HWND hwnd, GUID *ActionID, LPVOID ActionData )
|
||||
{
|
||||
+ static const GUID gen_verify_v2 = WINTRUST_ACTION_GENERIC_VERIFY_V2;
|
||||
+
|
||||
|
|
Loading…
Reference in a new issue