|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows NT Security
// Copyright (C) Microsoft Corporation, 1992 - 1999
//
// File: ekuhlpr.h
//
// Contents: Certificate Enhanced Key Usage Helper API implementation
//
// History: 22-May-97 kirtd Created
//
//----------------------------------------------------------------------------
#if !defined(__EKUHLPR_H__)
#define __EKUHLPR_H__
PCRYPT_OBJID_BLOB EkuGetExtension ( PCCERT_CONTEXT pCertContext, BOOL *pfAppCertPolicies );
HRESULT EkuGetProperty ( PCCERT_CONTEXT pCertContext, PCRYPT_OBJID_BLOB pEkuBlob );
HRESULT EkuSetProperty ( PCCERT_CONTEXT pCertContext, PCRYPT_OBJID_BLOB pEkuBlob );
HRESULT EkuDecodeCertPoliciesAndConvertToUsage ( PCRYPT_OBJID_BLOB pEkuBlob, DWORD* pcbSize, PCERT_ENHKEY_USAGE pUsage // OPTIONAL
);
HRESULT EkuGetDecodedSize ( PCRYPT_OBJID_BLOB pEkuBlob, DWORD* pcbSize );
HRESULT EkuGetDecodedUsageSizes ( BOOL fExtCertPolicies, PCRYPT_OBJID_BLOB pExtBlob, PCRYPT_OBJID_BLOB pPropBlob, DWORD* pcbSize, DWORD* pcbExtSize, DWORD* pcbPropSize );
HRESULT EkuGetDecodedUsage ( PCRYPT_OBJID_BLOB pEkuBlob, DWORD* pcbSize, PCERT_ENHKEY_USAGE pUsage );
HRESULT EkuMergeUsage ( DWORD cbSize1, PCERT_ENHKEY_USAGE pUsage1, DWORD cbSize2, PCERT_ENHKEY_USAGE pUsage2, DWORD cbSizeM, PCERT_ENHKEY_USAGE pUsageM );
HRESULT EkuGetMergedDecodedUsage ( BOOL fExtCertPolicies, PCRYPT_OBJID_BLOB pExtBlob, PCRYPT_OBJID_BLOB pPropBlob, DWORD* pcbSize, PCERT_ENHKEY_USAGE pUsage );
HRESULT EkuEncodeUsage ( PCERT_ENHKEY_USAGE pUsage, PCRYPT_OBJID_BLOB pEkuBlob );
HRESULT EkuGetUsage ( PCCERT_CONTEXT pCertContext, DWORD dwFlags, DWORD* pcbSize, PCERT_ENHKEY_USAGE* ppUsage );
#define CERT_FIND_ALL_ENHKEY_USAGE_FLAG (CERT_FIND_EXT_ONLY_ENHKEY_USAGE_FLAG |\
CERT_FIND_PROP_ONLY_ENHKEY_USAGE_FLAG)
BOOL EkuGetIntersectedUsageViaGetValidUsages ( PCCERT_CONTEXT pCertContext, DWORD* pcbSize, PCERT_ENHKEY_USAGE pUsage );
#endif
|