--- /dev/null
+//
+// CL plugin transition layer.
+// This file was automatically generated. Do not edit on penalty of futility!
+//
+#ifndef _H_CLABSTRACTSESSION
+#define _H_CLABSTRACTSESSION
+
+#include <security_cdsa_plugin/pluginsession.h>
+#include <security_cdsa_utilities/cssmdata.h>
+
+
+namespace Security {
+
+
+//
+// A pure abstract class to define the CL module interface
+//
+class CLAbstractPluginSession {
+public:
+ virtual ~CLAbstractPluginSession();
+ virtual void CertGetAllFields(const CssmData &Cert,
+ uint32 &NumberOfFields,
+ CSSM_FIELD_PTR &CertFields) = 0;
+ virtual void CertGetAllTemplateFields(const CssmData &CertTemplate,
+ uint32 &NumberOfFields,
+ CSSM_FIELD_PTR &CertFields) = 0;
+ virtual void CrlSetFields(uint32 NumberOfFields,
+ const CSSM_FIELD CrlTemplate[],
+ const CssmData &OldCrl,
+ CssmData &ModifiedCrl) = 0;
+ virtual void CrlAbortCache(CSSM_HANDLE CrlHandle) = 0;
+ virtual void CrlGetAllFields(const CssmData &Crl,
+ uint32 &NumberOfCrlFields,
+ CSSM_FIELD_PTR &CrlFields) = 0;
+ virtual void FreeFields(uint32 NumberOfFields,
+ CSSM_FIELD_PTR &FieldArray) = 0;
+ virtual bool CrlGetNextFieldValue(CSSM_HANDLE ResultsHandle,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual CSSM_HANDLE CrlGetFirstFieldValue(const CssmData &Crl,
+ const CssmData &CrlField,
+ uint32 &NumberOfMatchedFields,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual void CertSign(CSSM_CC_HANDLE CCHandle,
+ const CssmData &CertTemplate,
+ const CSSM_FIELD *SignScope,
+ uint32 ScopeSize,
+ CssmData &SignedCert) = 0;
+ virtual void CrlCreateTemplate(uint32 NumberOfFields,
+ const CSSM_FIELD CrlTemplate[],
+ CssmData &NewCrl) = 0;
+ virtual bool CertGetNextCachedFieldValue(CSSM_HANDLE ResultsHandle,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual void PassThrough(CSSM_CC_HANDLE CCHandle,
+ uint32 PassThroughId,
+ const void *InputParams,
+ void **OutputParams) = 0;
+ virtual CSSM_HANDLE CertGetFirstFieldValue(const CssmData &Cert,
+ const CssmData &CertField,
+ uint32 &NumberOfMatchedFields,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual void CrlVerifyWithKey(CSSM_CC_HANDLE CCHandle,
+ const CssmData &CrlToBeVerified) = 0;
+ virtual void CertCreateTemplate(uint32 NumberOfFields,
+ const CSSM_FIELD CertFields[],
+ CssmData &CertTemplate) = 0;
+ virtual void CertCache(const CssmData &Cert,
+ CSSM_HANDLE &CertHandle) = 0;
+ virtual bool CertGetNextFieldValue(CSSM_HANDLE ResultsHandle,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual void CertAbortQuery(CSSM_HANDLE ResultsHandle) = 0;
+ virtual void IsCertInCachedCrl(const CssmData &Cert,
+ CSSM_HANDLE CrlHandle,
+ CSSM_BOOL &CertFound,
+ CssmData &CrlRecordIndex) = 0;
+ virtual void CrlSign(CSSM_CC_HANDLE CCHandle,
+ const CssmData &UnsignedCrl,
+ const CSSM_FIELD *SignScope,
+ uint32 ScopeSize,
+ CssmData &SignedCrl) = 0;
+ virtual void CrlAddCert(CSSM_CC_HANDLE CCHandle,
+ const CssmData &Cert,
+ uint32 NumberOfFields,
+ const CSSM_FIELD CrlEntryFields[],
+ const CssmData &OldCrl,
+ CssmData &NewCrl) = 0;
+ virtual void CertGroupToSignedBundle(CSSM_CC_HANDLE CCHandle,
+ const CSSM_CERTGROUP &CertGroupToBundle,
+ const CSSM_CERT_BUNDLE_HEADER *BundleInfo,
+ CssmData &SignedBundle) = 0;
+ virtual void FreeFieldValue(const CssmData &CertOrCrlOid,
+ CssmData &Value) = 0;
+ virtual void CertDescribeFormat(uint32 &NumberOfFields,
+ CSSM_OID_PTR &OidList) = 0;
+ virtual void CrlAbortQuery(CSSM_HANDLE ResultsHandle) = 0;
+ virtual void CrlDescribeFormat(uint32 &NumberOfFields,
+ CSSM_OID_PTR &OidList) = 0;
+ virtual void CrlVerify(CSSM_CC_HANDLE CCHandle,
+ const CssmData &CrlToBeVerified,
+ const CssmData *SignerCert,
+ const CSSM_FIELD *VerifyScope,
+ uint32 ScopeSize) = 0;
+ virtual void CertGetKeyInfo(const CssmData &Cert,
+ CSSM_KEY_PTR &Key) = 0;
+ virtual void CertVerify(CSSM_CC_HANDLE CCHandle,
+ const CssmData &CertToBeVerified,
+ const CssmData *SignerCert,
+ const CSSM_FIELD *VerifyScope,
+ uint32 ScopeSize) = 0;
+ virtual CSSM_HANDLE CertGetFirstCachedFieldValue(CSSM_HANDLE CertHandle,
+ const CssmData &CertField,
+ uint32 &NumberOfMatchedFields,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual CSSM_HANDLE CrlGetFirstCachedFieldValue(CSSM_HANDLE CrlHandle,
+ const CssmData *CrlRecordIndex,
+ const CssmData &CrlField,
+ uint32 &NumberOfMatchedFields,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual void CertVerifyWithKey(CSSM_CC_HANDLE CCHandle,
+ const CssmData &CertToBeVerified) = 0;
+ virtual void CrlRemoveCert(const CssmData &Cert,
+ const CssmData &OldCrl,
+ CssmData &NewCrl) = 0;
+ virtual void CrlGetAllCachedRecordFields(CSSM_HANDLE CrlHandle,
+ const CssmData &CrlRecordIndex,
+ uint32 &NumberOfFields,
+ CSSM_FIELD_PTR &CrlFields) = 0;
+ virtual void CertGroupFromVerifiedBundle(CSSM_CC_HANDLE CCHandle,
+ const CSSM_CERT_BUNDLE &CertBundle,
+ const CssmData *SignerCert,
+ CSSM_CERTGROUP_PTR &CertGroup) = 0;
+ virtual bool CrlGetNextCachedFieldValue(CSSM_HANDLE ResultsHandle,
+ CSSM_DATA_PTR &Value) = 0;
+ virtual void IsCertInCrl(const CssmData &Cert,
+ const CssmData &Crl,
+ CSSM_BOOL &CertFound) = 0;
+ virtual void CrlCache(const CssmData &Crl,
+ CSSM_HANDLE &CrlHandle) = 0;
+ virtual void CertAbortCache(CSSM_HANDLE CertHandle) = 0;
+};
+
+} // end namespace Security
+
+#endif //_H_CLABSTRACTSESSION