You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
187 lines
7.4 KiB
187 lines
7.4 KiB
/*****************************************************************************\
|
|
* *
|
|
* Wab16.h *
|
|
* *
|
|
\*****************************************************************************/
|
|
|
|
#ifndef __WAB16_H__
|
|
#define __WAB16_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
/*****************************************************************************\
|
|
* *
|
|
* From windowsx.h(INC32)
|
|
* *
|
|
\*****************************************************************************/
|
|
typedef WCHAR PWCHAR;
|
|
#define END_INTERFACE
|
|
|
|
// From capi.h
|
|
#define WTD_UI_ALL 1
|
|
#define WTD_UI_NONE 2
|
|
#define WTD_UI_NOBAD 3
|
|
#define WTD_UI_NOGOOD 4
|
|
#define WTD_REVOKE_NONE 0x00000000
|
|
#define WTD_REVOKE_WHOLECHAIN 0x00000001
|
|
|
|
#pragma pack(8)
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// WINTRUST_DATA Structure
|
|
//----------------------------------------------------------------------------
|
|
// Used when calling WinVerifyTrust to pass necessary information into
|
|
// the Providers.
|
|
//
|
|
typedef struct _WINTRUST_DATA
|
|
{
|
|
DWORD cbStruct; // = sizeof(WINTRUST_DATA)
|
|
|
|
LPVOID pPolicyCallbackData; // optional: used to pass data between the app and policy
|
|
LPVOID pSIPClientData; // optional: used to pass data between the app and SIP.
|
|
|
|
DWORD dwUIChoice; // required: UI choice. One of the following.
|
|
# define WTD_UI_ALL 1
|
|
# define WTD_UI_NONE 2
|
|
# define WTD_UI_NOBAD 3
|
|
# define WTD_UI_NOGOOD 4
|
|
|
|
DWORD fdwRevocationChecks; // required: certificate revocation check options
|
|
# define WTD_REVOKE_NONE 0x00000000
|
|
# define WTD_REVOKE_WHOLECHAIN 0x00000001
|
|
|
|
DWORD dwUnionChoice; // required: which structure is being passed in?
|
|
# define WTD_CHOICE_FILE 1
|
|
# define WTD_CHOICE_CATALOG 2
|
|
# define WTD_CHOICE_BLOB 3
|
|
# define WTD_CHOICE_SIGNER 4
|
|
# define WTD_CHOICE_CERT 5
|
|
union
|
|
{
|
|
struct WINTRUST_FILE_INFO_ *pFile; // individual file
|
|
struct WINTRUST_CATALOG_INFO_ *pCatalog; // member of a Catalog File
|
|
struct WINTRUST_BLOB_INFO_ *pBlob; // memory blob
|
|
struct WINTRUST_SGNR_INFO_ *pSgnr; // signer structure only
|
|
struct WINTRUST_CERT_INFO_ *pCert;
|
|
};
|
|
|
|
DWORD dwStateAction; // optional
|
|
# define WTD_STATEACTION_IGNORE 0x00000000
|
|
# define WTD_STATEACTION_VERIFY 0x00000001
|
|
# define WTD_STATEACTION_CLOSE 0x00000002
|
|
|
|
HANDLE hWVTStateData; // optional
|
|
|
|
WCHAR *pwszURLReference; // optional: currently used to determine zone.
|
|
|
|
} WINTRUST_DATA, *PWINTRUST_DATA;
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// WINTRUST_FILE_INFO Structure
|
|
//----------------------------------------------------------------------------
|
|
// Used when calling WinVerifyTrust against an individual file.
|
|
//
|
|
typedef struct WINTRUST_FILE_INFO_
|
|
{
|
|
DWORD cbStruct; // = sizeof(WINTRUST_FILE_INFO)
|
|
|
|
LPCWSTR pcwszFilePath; // required, file name to be verified
|
|
HANDLE hFile; // optional, open handle to pcwszFilePath
|
|
|
|
} WINTRUST_FILE_INFO, *PWINTRUST_FILE_INFO;
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// WINTRUST_CATALOG_INFO Structure
|
|
//----------------------------------------------------------------------------
|
|
// Used when calling WinVerifyTrust against a member of a Microsoft Catalog
|
|
// file.
|
|
//
|
|
typedef struct WINTRUST_CATALOG_INFO_
|
|
{
|
|
DWORD cbStruct; // = sizeof(WINTRUST_CATALOG_INFO)
|
|
|
|
DWORD dwCatalogVersion; // optional: Catalog version number
|
|
LPCWSTR pcwszCatalogFilePath; // required: path/name to Catalog file
|
|
|
|
LPCWSTR pcwszMemberTag; // required: tag to member in Catalog
|
|
LPCWSTR pcwszMemberFilePath; // required: path/name to member file
|
|
HANDLE hMemberFile; // optional: open handle to pcwszMemberFilePath
|
|
|
|
} WINTRUST_CATALOG_INFO, *PWINTRUST_CATALOG_INFO;
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// WINTRUST_BLOB_INFO Structure
|
|
//----------------------------------------------------------------------------
|
|
// Used when calling WinVerifyTrust against a memory blob.
|
|
//
|
|
typedef struct WINTRUST_BLOB_INFO_
|
|
{
|
|
DWORD cbStruct; // = sizeof(WINTRUST_BLOB_INFO)
|
|
|
|
GUID gSubject; // SIP to load
|
|
|
|
LPCWSTR pcwszDisplayName; // display name of object
|
|
|
|
DWORD cbMemObject;
|
|
BYTE *pbMemObject;
|
|
|
|
DWORD cbMemSignedMsg;
|
|
BYTE *pbMemSignedMsg;
|
|
|
|
} WINTRUST_BLOB_INFO, *PWINTRUST_BLOB_INFO;
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// WINTRUST_SGNR_INFO Structure
|
|
//----------------------------------------------------------------------------
|
|
// Used when calling WinVerifyTrust against a CMSG_SIGNER_INFO Structure
|
|
//
|
|
typedef struct WINTRUST_SGNR_INFO_
|
|
{
|
|
DWORD cbStruct; // = sizeof(WINTRUST_SGNR_INFO)
|
|
|
|
LPCWSTR pcwszDisplayName; // name of the "thing" the pbMem is pointing to.
|
|
|
|
CMSG_SIGNER_INFO *psSignerInfo;
|
|
|
|
DWORD chStores; // number of stores in pahStores
|
|
HCERTSTORE *pahStores; // array of stores to add to internal list
|
|
|
|
} WINTRUST_SGNR_INFO, *PWINTRUST_SGNR_INFO;
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// WINTRUST_CERT_INFO Structure
|
|
//----------------------------------------------------------------------------
|
|
// Used when calling WinVerifyTrust against a CERT_CONTEXT Structure
|
|
//
|
|
typedef struct WINTRUST_CERT_INFO_
|
|
{
|
|
DWORD cbStruct; // = sizeof(WINTRUST_CERT_INFO)
|
|
|
|
LPCWSTR pcwszDisplayName; // display name
|
|
|
|
CERT_CONTEXT *psCertContext;
|
|
|
|
DWORD chStores; // number of stores in pahStores
|
|
HCERTSTORE *pahStores; // array of stores to add to internal list
|
|
|
|
} WINTRUST_CERT_INFO, *PWINTRUST_CERT_INFO;
|
|
|
|
#pragma pack()
|
|
|
|
// End of Capi.h
|
|
|
|
const CLSID CLSID_HTMLDocument;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // !__WAB16_H__
|