mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 08:55:19 +00:00
wintrust vendor import
svn path=/trunk/; revision=20905
This commit is contained in:
parent
aa886b4606
commit
4b714cc7f4
12 changed files with 518 additions and 1 deletions
|
@ -85,6 +85,7 @@
|
|||
<property name="BASEADDRESS_SHFOLDER" value="0x76780000" />
|
||||
<property name="BASEADDRESS_NTMARTA" value="0x768A0000" />
|
||||
<property name="BASEADDRESS_GDIPLUS" value="0x76a00000" />
|
||||
<property name="BASEADDRESS_WINTRUST" value="0x76c30000" />
|
||||
<property name="BASEADDRESS_IMAGEHLP" value="0x76c90000" />
|
||||
<property name="BASEADDRESS_FMIFS" value="0x76df0000" />
|
||||
<property name="BASEADDRESS_SHELL32" value="0x77260000" />
|
||||
|
|
|
@ -167,9 +167,10 @@ lib\user32\user32.dll 1
|
|||
lib\userenv\userenv.dll 1
|
||||
lib\uxtheme\uxtheme.dll 1
|
||||
lib\version\version.dll 1
|
||||
lib\winspool\winspool.drv 1
|
||||
lib\wininet\wininet.dll 1
|
||||
lib\winmm\winmm.dll 1
|
||||
lib\winspool\winspool.drv 1
|
||||
lib\wintrust\wintrust.dll 1
|
||||
lib\ws2_32\ws2_32.dll 1
|
||||
lib\ws2help\ws2help.dll 1
|
||||
lib\wshirda\wshirda.dll 1
|
||||
|
|
|
@ -338,6 +338,9 @@
|
|||
<directory name="winspool">
|
||||
<xi:include href="winspool/winspool.xml" />
|
||||
</directory>
|
||||
<directory name="wintrust">
|
||||
<xi:include href="wintrust/wintrust.xml" />
|
||||
</directory>
|
||||
<directory name="ws2_32">
|
||||
<xi:include href="ws2_32/ws2_32.xml" />
|
||||
</directory>
|
||||
|
|
16
reactos/lib/wintrust/Makefile.in
Normal file
16
reactos/lib/wintrust/Makefile.in
Normal file
|
@ -0,0 +1,16 @@
|
|||
TOPSRCDIR = @top_srcdir@
|
||||
TOPOBJDIR = ../..
|
||||
SRCDIR = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
MODULE = wintrust.dll
|
||||
IMPORTLIB = libwintrust.$(IMPLIBEXT)
|
||||
IMPORTS = kernel32
|
||||
|
||||
C_SRCS = wintrust_main.c
|
||||
|
||||
RC_SRCS = \
|
||||
version.rc
|
||||
|
||||
@MAKE_DLL_RULES@
|
||||
|
||||
### Dependencies:
|
27
reactos/lib/wintrust/version.rc
Normal file
27
reactos/lib/wintrust/version.rc
Normal file
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
* Copyright 2005
|
||||
*
|
||||
* Stefan Leichter
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#define WINE_FILENAME_STR "wintrust.dll"
|
||||
#define WINE_FILEVERSION 5,131,2195,6824
|
||||
#define WINE_FILEVERSION_STR "5.131.2195.6824"
|
||||
#define WINE_PRODUCTVERSION 5,131,2195,6824
|
||||
#define WINE_PRODUCTVERSION_STR "5.131.2195.6824"
|
||||
|
||||
#include "wine/wine_common_ver.rc"
|
124
reactos/lib/wintrust/wintrust.spec
Normal file
124
reactos/lib/wintrust/wintrust.spec
Normal file
|
@ -0,0 +1,124 @@
|
|||
@ stub AddPersonalTrustDBPages
|
||||
@ stub CatalogCompactHashDatabase
|
||||
@ stdcall CryptCATAdminAcquireContext(long ptr long)
|
||||
@ stub CryptCATAdminAddCatalog
|
||||
@ stdcall CryptCATAdminCalcHashFromFileHandle(long ptr ptr long)
|
||||
@ stub CryptCATAdminEnumCatalogFromHash
|
||||
@ stub CryptCATAdminPauseServiceForBackup
|
||||
@ stub CryptCATAdminReleaseCatalogContext
|
||||
@ stdcall CryptCATAdminReleaseContext(long long)
|
||||
@ stub CryptCATAdminRemoveCatalog
|
||||
@ stub CryptCATAdminResolveCatalogPath
|
||||
@ stub CryptCATCDFClose
|
||||
@ stub CryptCATCDFEnumAttributes
|
||||
@ stub CryptCATCDFEnumAttributesWithCDFTag
|
||||
@ stub CryptCATCDFEnumCatAttributes
|
||||
@ stub CryptCATCDFEnumMembers
|
||||
@ stub CryptCATCDFEnumMembersByCDFTag
|
||||
@ stub CryptCATCDFEnumMembersByCDFTagEx
|
||||
@ stub CryptCATCDFOpen
|
||||
@ stub CryptCATCatalogInfoFromContext
|
||||
@ stub CryptCATClose
|
||||
@ stub CryptCATEnumerateAttr
|
||||
@ stub CryptCATEnumerateCatAttr
|
||||
@ stub CryptCATEnumerateMember
|
||||
@ stub CryptCATGetAttrInfo
|
||||
@ stub CryptCATGetCatAttrInfo
|
||||
@ stub CryptCATGetMemberInfo
|
||||
@ stub CryptCATHandleFromStore
|
||||
@ stub CryptCATOpen
|
||||
@ stub CryptCATPersistStore
|
||||
@ stub CryptCATPutAttrInfo
|
||||
@ stub CryptCATPutCatAttrInfo
|
||||
@ stub CryptCATPutMemberInfo
|
||||
@ stub CryptCATStoreFromHandle
|
||||
@ stub CryptCATVerifyMember
|
||||
@ stub CryptSIPCreateIndirectData
|
||||
@ stub CryptSIPGetInfo
|
||||
@ stub CryptSIPGetRegWorkingFlags
|
||||
@ stub CryptSIPGetSignedDataMsg
|
||||
@ stub CryptSIPPutSignedDataMsg
|
||||
@ stub CryptSIPRemoveSignedDataMsg
|
||||
@ stub CryptSIPVerifyIndirectData
|
||||
@ stdcall -private DllRegisterServer()
|
||||
@ stdcall -private DllUnregisterServer()
|
||||
@ stub DriverCleanupPolicy
|
||||
@ stub DriverFinalPolicy
|
||||
@ stub DriverInitializePolicy
|
||||
@ stub FindCertsByIssuer
|
||||
@ stub GenericChainCertificateTrust
|
||||
@ stub GenericChainFinalProv
|
||||
@ stub HTTPSCertificateTrust
|
||||
@ stub HTTPSFinalProv
|
||||
@ stub IsCatalogFile
|
||||
@ stub MsCatConstructHashTag
|
||||
@ stub MsCatFreeHashTag
|
||||
@ stub OfficeCleanupPolicy
|
||||
@ stub OfficeInitializePolicy
|
||||
@ stub OpenPersonalTrustDBDialog
|
||||
@ stub SoftpubAuthenticode
|
||||
@ stub SoftpubCheckCert
|
||||
@ stub SoftpubCleanup
|
||||
@ stub SoftpubDefCertInit
|
||||
@ stub SoftpubDllRegisterServer
|
||||
@ stub SoftpubDllUnregisterServer
|
||||
@ stub SoftpubDumpStructure
|
||||
@ stub SoftpubFreeDefUsageCallData
|
||||
@ stub SoftpubInitialize
|
||||
@ stub SoftpubLoadDefUsageCallData
|
||||
@ stub SoftpubLoadMessage
|
||||
@ stub SoftpubLoadSignature
|
||||
@ stub TrustDecode
|
||||
@ stub TrustFindIssuerCertificate
|
||||
@ stub TrustFreeDecode
|
||||
@ stub TrustIsCertificateSelfSigned
|
||||
@ stub TrustOpenStores
|
||||
@ stub WTHelperCertFindIssuerCertificate
|
||||
@ stub WTHelperCertIsSelfSigned
|
||||
@ stub WTHelperCheckCertUsage
|
||||
@ stub WTHelperGetAgencyInfo
|
||||
@ stub WTHelperGetFileHandle
|
||||
@ stub WTHelperGetFileName
|
||||
@ stub WTHelperGetKnownUsages
|
||||
@ stub WTHelperGetProvCertFromChain
|
||||
@ stub WTHelperGetProvPrivateDataFromChain
|
||||
@ stub WTHelperGetProvSignerFromChain
|
||||
@ stub WTHelperIsInRootStore
|
||||
@ stub WTHelperOpenKnownStores
|
||||
@ stub WTHelperProvDataFromStateData
|
||||
@ stub WVTAsn1CatMemberInfoDecode
|
||||
@ stub WVTAsn1CatMemberInfoEncode
|
||||
@ stub WVTAsn1CatNameValueDecode
|
||||
@ stub WVTAsn1CatNameValueEncode
|
||||
@ stub WVTAsn1SpcFinancialCriteriaInfoDecode
|
||||
@ stub WVTAsn1SpcFinancialCriteriaInfoEncode
|
||||
@ stub WVTAsn1SpcIndirectDataContentDecode
|
||||
@ stub WVTAsn1SpcIndirectDataContentEncode
|
||||
@ stub WVTAsn1SpcLinkDecode
|
||||
@ stub WVTAsn1SpcLinkEncode
|
||||
@ stub WVTAsn1SpcMinimalCriteriaInfoDecode
|
||||
@ stub WVTAsn1SpcMinimalCriteriaInfoEncode
|
||||
@ stub WVTAsn1SpcPeImageDataDecode
|
||||
@ stub WVTAsn1SpcPeImageDataEncode
|
||||
@ stub WVTAsn1SpcSigInfoDecode
|
||||
@ stub WVTAsn1SpcSigInfoEncode
|
||||
@ stub WVTAsn1SpcSpAgencyInfoDecode
|
||||
@ stub WVTAsn1SpcSpAgencyInfoEncode
|
||||
@ stub WVTAsn1SpcSpOpusInfoDecode
|
||||
@ stub WVTAsn1SpcSpOpusInfoEncode
|
||||
@ stub WVTAsn1SpcStatementTypeDecode
|
||||
@ stub WVTAsn1SpcStatementTypeEncode
|
||||
@ stdcall WinVerifyTrust(long ptr ptr)
|
||||
@ stub WinVerifyTrustEx
|
||||
@ stdcall WintrustAddActionID(ptr long ptr)
|
||||
@ stub WintrustAddDefaultForUsage
|
||||
@ stub WintrustCertificateTrust
|
||||
@ stub WintrustGetDefaultForUsage
|
||||
@ stdcall WintrustGetRegPolicyFlags(ptr)
|
||||
@ stub WintrustLoadFunctionPointers
|
||||
@ stub WintrustRemoveActionID
|
||||
@ stdcall WintrustSetRegPolicyFlags(long)
|
||||
@ stub mscat32DllRegisterServer
|
||||
@ stub mscat32DllUnregisterServer
|
||||
@ stub mssip32DllRegisterServer
|
||||
@ stub mssip32DllUnregisterServer
|
12
reactos/lib/wintrust/wintrust.xml
Normal file
12
reactos/lib/wintrust/wintrust.xml
Normal file
|
@ -0,0 +1,12 @@
|
|||
<module name="wintrust" type="win32dll" baseaddress="${BASEADDRESS_WINTRUST}" installbase="system32" installname="wintrust.dll">
|
||||
<autoregister infsection="OleControlDlls" type="DllRegisterServer" />
|
||||
<importlibrary definition="wintrust.spec.def" />
|
||||
<include base="wintrust">.</include>
|
||||
<include base="ReactOS">include/wine</include>
|
||||
<define name="__USE_W32API" />
|
||||
<library>wine</library>
|
||||
<library>ntdll</library>
|
||||
<file>wintrust_main.c</file>
|
||||
<file>version.rc</file>
|
||||
<file>wintrust.spec</file>
|
||||
</module>
|
141
reactos/lib/wintrust/wintrust_main.c
Normal file
141
reactos/lib/wintrust/wintrust_main.c
Normal file
|
@ -0,0 +1,141 @@
|
|||
/*
|
||||
* Copyright 2001 Rein Klazes
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winerror.h"
|
||||
#include "guiddef.h"
|
||||
#include "wintrust.h"
|
||||
#include "mscat.h"
|
||||
#include "objbase.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(wintrust);
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminAcquireContext (WINTRUST.@)
|
||||
*/
|
||||
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;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CryptCATAdminReleaseContext (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN hCatAdmin, DWORD dwFlags )
|
||||
{
|
||||
FIXME("%p %lx\n", hCatAdmin, dwFlags);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WinVerifyTrust (WINTRUST.@)
|
||||
*/
|
||||
LONG WINAPI WinVerifyTrust( HWND hwnd, GUID *ActionID, WINTRUST_DATA* ActionData )
|
||||
{
|
||||
static const GUID WINTRUST_ACTION_GENERIC_VERIFY_V2 = { 0xaac56b, 0xcd44, 0x11d0,
|
||||
{ 0x8c,0xc2,0x00,0xc0,0x4f,0xc2,0x95,0xee }};
|
||||
|
||||
FIXME("%p %s %p\n", hwnd, debugstr_guid(ActionID), ActionData);
|
||||
|
||||
/* Trust providers can be found at:
|
||||
* HKLM\SOFTWARE\Microsoft\Cryptography\Providers\Trust\CertCheck\
|
||||
*
|
||||
* Process Explorer expects a correct implementation, so we
|
||||
* return TRUST_E_PROVIDER_UNKNOWN.
|
||||
*
|
||||
* Girotel needs ERROR_SUCCESS.
|
||||
*
|
||||
* For now return TRUST_E_PROVIDER_UNKNOWN only when
|
||||
* ActionID = WINTRUST_ACTION_GENERIC_VERIFY_V2.
|
||||
*
|
||||
*/
|
||||
|
||||
if (IsEqualCLSID(ActionID, &WINTRUST_ACTION_GENERIC_VERIFY_V2))
|
||||
return TRUST_E_PROVIDER_UNKNOWN;
|
||||
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WintrustAddActionID (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI WintrustAddActionID( GUID* pgActionID, DWORD fdwFlags,
|
||||
CRYPT_REGISTER_ACTIONID* psProvInfo)
|
||||
{
|
||||
FIXME("%p %lx %p\n", pgActionID, fdwFlags, psProvInfo);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WintrustGetRegPolicyFlags (WINTRUST.@)
|
||||
*/
|
||||
void WINAPI WintrustGetRegPolicyFlags( DWORD* pdwPolicyFlags )
|
||||
{
|
||||
FIXME("%p\n", pdwPolicyFlags);
|
||||
*pdwPolicyFlags = 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* WintrustSetRegPolicyFlags (WINTRUST.@)
|
||||
*/
|
||||
BOOL WINAPI WintrustSetRegPolicyFlags( DWORD dwPolicyFlags)
|
||||
{
|
||||
FIXME("stub: %lx\n", dwPolicyFlags);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DllRegisterServer (WINTRUST.@)
|
||||
*/
|
||||
HRESULT WINAPI DllRegisterServer(void)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DllUnregisterServer (WINTRUST.@)
|
||||
*/
|
||||
HRESULT WINAPI DllUnregisterServer(void)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return S_OK;
|
||||
}
|
|
@ -79,6 +79,7 @@ reactos/lib/urlmon # Synced to Wine-0_9_5
|
|||
reactos/lib/uxtheme # Synced to Wine-0_9_5
|
||||
reactos/lib/version # Out of sync
|
||||
reactos/lib/wininet # Out of sync
|
||||
reactos/lib/wintrust # Synced to Wine-0_9_5
|
||||
reactos/lib/winmm # Forked at Wine-20050628
|
||||
reactos/lib/winmm/midimap # Forked at Wine-20050628
|
||||
reactos/lib/winmm/wavemap # Forked at Wine-20050628
|
||||
|
|
37
reactos/w32api/include/mscat.h
Normal file
37
reactos/w32api/include/mscat.h
Normal file
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
* Copyright (C) 2004 Francois Gouget
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __WINE_MSCAT_H
|
||||
#define __WINE_MSCAT_H
|
||||
|
||||
typedef HANDLE HCATADMIN;
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
BOOL WINAPI CryptCATAdminAcquireContext(HCATADMIN*,const GUID*,DWORD);
|
||||
BOOL WINAPI CryptCATAdminCalcHashFromFileHandle(HANDLE,DWORD*,BYTE*,DWORD);
|
||||
BOOL WINAPI CryptCATAdminReleaseContext(HCATADMIN,DWORD);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
|
@ -1482,6 +1482,21 @@ typedef struct _CRYPT_ATTRIBUTE {
|
|||
DWORD cValue;
|
||||
PCRYPT_ATTR_BLOB rgValue;
|
||||
} CRYPT_ATTRIBUTE, *PCRYPT_ATTRIBUTE;
|
||||
typedef struct _CRYPT_ATTRIBUTES {
|
||||
DWORD cAttr;
|
||||
PCRYPT_ATTRIBUTE rgAttr;
|
||||
} CRYPT_ATTRIBUTES, *PCRYPT_ATTRIBUTES;
|
||||
|
||||
typedef struct _CMSG_SIGNER_INFO {
|
||||
DWORD dwVersion;
|
||||
CERT_NAME_BLOB Issuer;
|
||||
CRYPT_INTEGER_BLOB SerialNumber;
|
||||
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
||||
CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
|
||||
CRYPT_DATA_BLOB EncryptedHash;
|
||||
CRYPT_ATTRIBUTES AuthAttrs;
|
||||
CRYPT_ATTRIBUTES UnauthAttrs;
|
||||
} CMSG_SIGNER_INFO, *PCMSG_SIGNER_INFO;
|
||||
typedef struct _CTL_ENTRY {
|
||||
CRYPT_DATA_BLOB SubjectIdentifier;
|
||||
DWORD cAttribute;
|
||||
|
|
139
reactos/w32api/include/wintrust.h
Normal file
139
reactos/w32api/include/wintrust.h
Normal file
|
@ -0,0 +1,139 @@
|
|||
/*
|
||||
* Copyright (C) 2004 Francois Gouget
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __WINE_WINTRUST_H
|
||||
#define __WINE_WINTRUST_H
|
||||
|
||||
#include <wincrypt.h>
|
||||
|
||||
|
||||
#include <pshpack8.h>
|
||||
|
||||
typedef struct WINTRUST_FILE_INFO_
|
||||
{
|
||||
DWORD cbStruct;
|
||||
LPCWSTR pcwszFilePath;
|
||||
HANDLE hFile;
|
||||
GUID* pgKnownSubject;
|
||||
} WINTRUST_FILE_INFO, *PWINTRUST_FILE_INFO;
|
||||
|
||||
typedef struct WINTRUST_CATALOG_INFO_
|
||||
{
|
||||
DWORD cbStruct;
|
||||
DWORD dwCatalogVersion;
|
||||
LPCWSTR pcwszCatalogFilePath;
|
||||
LPCWSTR pcwszMemberTag;
|
||||
LPCWSTR pcwszMemberFilePath;
|
||||
HANDLE hMemberFile;
|
||||
BYTE* pbCalculatedFileHash;
|
||||
DWORD cbCalculatedFileHash;
|
||||
PCCTL_CONTEXT pcCatalogContext;
|
||||
} WINTRUST_CATALOG_INFO, *PWINTRUST_CATALOG_INFO;
|
||||
|
||||
typedef struct WINTRUST_BLOB_INFO_
|
||||
{
|
||||
DWORD cbStruct;
|
||||
GUID gSubject;
|
||||
LPCWSTR pcwszDisplayName;
|
||||
DWORD cbMemObject;
|
||||
BYTE* pbMemObject;
|
||||
DWORD cbMemSignedMsg;
|
||||
BYTE* pbMemSignedMsg;
|
||||
} WINTRUST_BLOB_INFO, *PWINTRUST_BLOB_INFO;
|
||||
|
||||
typedef struct WINTRUST_SGNR_INFO_
|
||||
{
|
||||
DWORD cbStruct;
|
||||
LPCWSTR pcwszDisplayName;
|
||||
CMSG_SIGNER_INFO* psSignerInfo;
|
||||
DWORD chStores;
|
||||
HCERTSTORE* pahStores;
|
||||
} WINTRUST_SGNR_INFO, *PWINTRUST_SGNR_INFO;
|
||||
|
||||
typedef struct WINTRUST_CERT_INFO_
|
||||
{
|
||||
DWORD cbStruct;
|
||||
LPCWSTR pcwszDisplayName;
|
||||
CERT_CONTEXT* psCertContext;
|
||||
DWORD chStores;
|
||||
HCERTSTORE* pahStores;
|
||||
DWORD dwFlags;
|
||||
FILETIME* psftVerifyAsOf;
|
||||
} WINTRUST_CERT_INFO, *PWINTRUST_CERT_INFO;
|
||||
|
||||
|
||||
typedef struct _WINTRUST_DATA
|
||||
{
|
||||
DWORD cbStruct;
|
||||
LPVOID pPolicyCallbackData;
|
||||
LPVOID pSIPClientData;
|
||||
DWORD dwUIChoice;
|
||||
DWORD fdwRevocationChecks;
|
||||
DWORD dwUnionChoice;
|
||||
union
|
||||
{
|
||||
struct WINTRUST_FILE_INFO_* pFile;
|
||||
struct WINTRUST_CATALOG_INFO_* pCatalog;
|
||||
struct WINTRUST_BLOB_INFO_* pBlob;
|
||||
struct WINTRUST_SGNR_INFO_* pSgnr;
|
||||
struct WINTRUST_CERT_INFO_* pCert;
|
||||
} DUMMYUNIONNAME;
|
||||
|
||||
DWORD dwStateAction;
|
||||
HANDLE hWVTStateData;
|
||||
WCHAR* pwszURLReference;
|
||||
DWORD dwProvFlags;
|
||||
DWORD dwUIContext;
|
||||
} WINTRUST_DATA, *PWINTRUST_DATA;
|
||||
|
||||
typedef struct _CRYPT_TRUST_REG_ENTRY
|
||||
{
|
||||
DWORD cbStruct;
|
||||
WCHAR *pwszDLLName;
|
||||
WCHAR *pwszFunctionName;
|
||||
} CRYPT_TRUST_REG_ENTRY, *PCRYPT_TRUST_REG_ENTRY;
|
||||
|
||||
typedef struct _CRYPT_REGISTER_ACTIONID
|
||||
{
|
||||
DWORD cbStruct;
|
||||
CRYPT_TRUST_REG_ENTRY sInitProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sObjectProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sSignatureProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sCertificateProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sCertificatePolicyProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sFinalPolicyProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sTestPolicyProvider;
|
||||
CRYPT_TRUST_REG_ENTRY sCleanupProvider;
|
||||
} CRYPT_REGISTER_ACTIONID, *PCRYPT_REGISTER_ACTIONID;
|
||||
|
||||
#include <poppack.h>
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
BOOL WINAPI WintrustAddActionID(GUID*,DWORD,CRYPT_REGISTER_ACTIONID*);
|
||||
void WINAPI WintrustGetRegPolicyFlags(DWORD*);
|
||||
LONG WINAPI WinVerifyTrust(HWND,GUID*,WINTRUST_DATA*);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
Loading…
Reference in a new issue