windows-nt/Source/XPSP1/NT/ds/security/cryptoapi/pkitrust/softpub/locals.h
2020-09-26 16:20:57 +08:00

179 lines
5.5 KiB
C

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File: locals.h
//
// Contents: Microsoft Internet Security Policy Provider
//
//
// History: 05-Jun-1997 pberkman created
//
//--------------------------------------------------------------------------
#ifndef LOCALS_H
#define LOCALS_H
#ifdef __cplusplus
extern "C"
{
#endif
extern HINSTANCE hinst;
#ifndef SECURITY_FLAG_IGNORE_REVOCATION
# define SECURITY_FLAG_IGNORE_REVOCATION 0x00000080
# define SECURITY_FLAG_IGNORE_UNKNOWN_CA 0x00000100
#endif
#ifndef SECURITY_FLAG_IGNORE_WRONG_USAGE
# define SECURITY_FLAG_IGNORE_WRONG_USAGE 0x00000200
#endif
#ifndef szOID_SERVER_GATED_CRYPTO
# define szOID_SERVER_GATED_CRYPTO "1.3.6.1.4.1.311.10.3.3"
#endif
#ifndef szOID_SGC_NETSCAPE
# define szOID_SGC_NETSCAPE "2.16.840.1.113730.4.1"
#endif
//
// checks.cpp
//
extern DWORD checkGetErrorBasedOnStepErrors(CRYPT_PROVIDER_DATA *pProvData);
extern BOOL checkIsTrustedRoot(CRYPT_PROVIDER_CERT *pRoot);
extern BOOL checkCertificateChain(CRYPT_PROVIDER_DATA *pProvData,
CRYPT_PROVIDER_SGNR *pProvSngr,
DWORD *dwError);
extern BOOL checkTimeStampCertificateChain(CRYPT_PROVIDER_DATA *pProvData,
CRYPT_PROVIDER_SGNR *pProvSngr,
DWORD *dwError);
extern BOOL checkSetCommercial(CRYPT_PROVIDER_DATA *pProvData,
CRYPT_PROVIDER_SGNR *pSgnr,
BOOL *pfCommercial);
extern BOOL checkBasicConstraints(CRYPT_PROVIDER_DATA *pProvData, CRYPT_PROVIDER_CERT *pCert,
DWORD CertIndex, PCERT_INFO pCertInfo);
extern BOOL checkBasicConstraints2(CRYPT_PROVIDER_DATA *pProvData, CRYPT_PROVIDER_CERT *pCert,
DWORD idxCert, PCERT_INFO pCertInfo);
extern BOOL checkCertPurpose(CRYPT_PROVIDER_DATA *pProvData,
CRYPT_PROVIDER_CERT *pCert, BOOL fCommercialMsg);
extern BOOL checkCertAnyUnknownCriticalExtensions(CRYPT_PROVIDER_DATA *pProvData,
PCERT_INFO pCertInfo);
extern BOOL checkMeetsMinimalFinancialCriteria(CRYPT_PROVIDER_DATA *pProvData,
PCCERT_CONTEXT pCert,
BOOL *pfAvail, BOOL *pfMeets);
extern BOOL checkRevocation(CRYPT_PROVIDER_DATA *pProvData, CRYPT_PROVIDER_SGNR *pSgnr,
BOOL fCommercial, DWORD *pdwError);
//
// authcode.cpp
//
extern HRESULT WINAPI SoftpubAuthenticode(CRYPT_PROVIDER_DATA *pProvData);
//
// msgprov.cpp
//
extern HRESULT WINAPI SoftpubLoadMessage(CRYPT_PROVIDER_DATA *pProvData);
//
// chkcert.cpp
//
extern BOOL WINAPI SoftpubCheckCert(CRYPT_PROVIDER_DATA *pProvData, DWORD idxSigner,
BOOL fCounterSignerChain, DWORD idxCounterSigner);
extern BOOL IsInTrustList(CRYPT_PROVIDER_DATA *pProvData, PCCERT_CONTEXT pCertContext, PCCERT_CONTEXT *ppCTLSigner,
LPSTR pszUsage);
//
// sigprov.cpp
//
extern HRESULT WINAPI SoftpubLoadSignature(CRYPT_PROVIDER_DATA *pProvData);
//
// initprov.cpp
//
extern HRESULT WINAPI SoftpubInitialize(CRYPT_PROVIDER_DATA *pProvData);
//
// clnprov.cpp
//
extern HRESULT WINAPI SoftpubCleanup(CRYPT_PROVIDER_DATA *pProvData);
//
// test.cpp
//
extern HRESULT WINAPI SoftpubDumpStructure(CRYPT_PROVIDER_DATA *pProvData);
//
// callui.cpp
//
extern HRESULT SoftpubCallUI(CRYPT_PROVIDER_DATA *pProvData, DWORD dwError, BOOL fFinalCall);
//
// httpsprv.cpp
//
STDAPI HTTPSRegisterServer(void);
STDAPI HTTPSUnregisterServer(void);
extern BOOL WINAPI HTTPSCheckCertProv(CRYPT_PROVIDER_DATA *pProvData, DWORD idxSigner,
BOOL fCounterSignerChain, DWORD idxCounterSigner);
extern HRESULT WINAPI HTTPSFinalProv(CRYPT_PROVIDER_DATA *pProvData);
//
// offprov.cpp
//
STDAPI OfficeRegisterServer(void);
STDAPI OfficeUnregisterServer(void);
extern HRESULT WINAPI OfficeInitializePolicy(CRYPT_PROVIDER_DATA *pProvData);
extern HRESULT WINAPI OfficeCleanupPolicy(CRYPT_PROVIDER_DATA *pProvData);
//
// drvprov.cpp
//
STDAPI DriverRegisterServer(void);
STDAPI DriverUnregisterServer(void);
extern HRESULT WINAPI DriverInitializePolicy(CRYPT_PROVIDER_DATA *pProvData);
extern HRESULT WINAPI DriverCleanupPolicy(CRYPT_PROVIDER_DATA *pProvData);
extern HRESULT WINAPI DriverFinalPolicy(CRYPT_PROVIDER_DATA *pProvData);
//
// sphelper.cpp
//
extern WCHAR *spGetAgencyNameOfCert(PCCERT_CONTEXT pCert);
extern WCHAR *spGetPublisherNameOfCert(IN PCCERT_CONTEXT pCert);
extern WCHAR *spGetCommonNameExtension(PCCERT_CONTEXT pCert);
extern WCHAR *spGetAgencyName(IN PCERT_NAME_BLOB pNameBlob);
extern WCHAR *spGetRDNAttrWStr(IN LPCSTR pszObjId, IN PCERT_NAME_BLOB pNameBlob);
//
// chainprv.cpp
//
STDAPI GenericChainRegisterServer(void);
STDAPI GenericChainUnregisterServer(void);
//
// dllmain.cpp
//
HCERTSTORE
WINAPI
OpenTrustedPublisherStore();
HCERTSTORE
WINAPI
OpenDisallowedStore();
#ifdef __cplusplus
}
#endif
#endif // LOCALS_H