CRYPT_PROVIDER_FUNCTIONS structure (wintrust.h)

[The CRYPT_PROVIDER_FUNCTIONS structure is available for use in the operating systems specified in the Requirements section. It may be altered or unavailable in subsequent versions.]

The CRYPT_PROVIDER_FUNCTIONS structure defines the functions used by a cryptographic service provider (CSP) for WinTrust operations.

Syntax

typedef struct _CRYPT_PROVIDER_FUNCTIONS {
  DWORD                             cbStruct;
  PFN_CPD_MEM_ALLOC                 pfnAlloc;
  PFN_CPD_MEM_FREE                  pfnFree;
  PFN_CPD_ADD_STORE                 pfnAddStore2Chain;
  PFN_CPD_ADD_SGNR                  pfnAddSgnr2Chain;
  PFN_CPD_ADD_CERT                  pfnAddCert2Chain;
  PFN_CPD_ADD_PRIVDATA              pfnAddPrivData2Chain;
  PFN_PROVIDER_INIT_CALL            pfnInitialize;
  PFN_PROVIDER_OBJTRUST_CALL        pfnObjectTrust;
  PFN_PROVIDER_SIGTRUST_CALL        pfnSignatureTrust;
  PFN_PROVIDER_CERTTRUST_CALL       pfnCertificateTrust;
  PFN_PROVIDER_FINALPOLICY_CALL     pfnFinalPolicy;
  PFN_PROVIDER_CERTCHKPOLICY_CALL   pfnCertCheckPolicy;
  PFN_PROVIDER_TESTFINALPOLICY_CALL pfnTestFinalPolicy;
  struct _CRYPT_PROVUI_FUNCS        *psUIpfns;
  PFN_PROVIDER_CLEANUP_CALL         pfnCleanupPolicy;
} CRYPT_PROVIDER_FUNCTIONS, *PCRYPT_PROVIDER_FUNCTIONS;

Members

cbStruct

The size, in bytes, of this structure.

pfnAlloc

A pointer to the memory allocation function.

pfnFree

A pointer to the memory deallocation function.

pfnAddStore2Chain

A pointer to the function that adds a store to the chain.

pfnAddSgnr2Chain

A pointer to the function that adds a signer structure to a message structure in a chain.

pfnAddCert2Chain

A pointer to the function that adds a certificate structure to a signer structure in a chain.

pfnAddPrivData2Chain

A pointer to the function that adds private data to a structure.

pfnInitialize

A pointer to the function that initializes policy data.

pfnObjectTrust

A pointer to the function that builds information for the signer data.

pfnSignatureTrust

A pointer to the function that builds information for the signing certificate.

pfnCertificateTrust

A pointer to the function that builds the chain.

pfnFinalPolicy

A pointer to the function that makes the final call to the policy.

pfnCertCheckPolicy

A pointer to the function that checks each certificate while building a chain.

pfnTestFinalPolicy

A pointer to the function that allows structures to be dumped to a file.

psUIpfns

A pointer to a CRYPT_PROVUI_FUNCS structure.

pfnCleanupPolicy

A pointer to the function that cleans up private data.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header wintrust.h