summaryrefslogtreecommitdiff
path: root/ckcapi-cert.c
diff options
context:
space:
mode:
Diffstat (limited to 'ckcapi-cert.c')
-rw-r--r--ckcapi-cert.c46
1 files changed, 11 insertions, 35 deletions
diff --git a/ckcapi-cert.c b/ckcapi-cert.c
index e7edde7..5225286 100644
--- a/ckcapi-cert.c
+++ b/ckcapi-cert.c
@@ -233,39 +233,6 @@ cert_bytes_attribute(CkCapiObjectData* objdata, CK_ATTRIBUTE_PTR attr)
return ckcapi_cert_certificate_get_bytes(cdata->cert, attr);
}
-static CK_RV
-cert_date_attribute(CkCapiObjectData* objdata, CK_ATTRIBUTE_PTR attr)
-{
- CertObjectData* cdata = (CertObjectData*)objdata;
- FILETIME* ftime;
-
- ASSERT(cdata);
- ASSERT(cdata->cert);
- ASSERT(attr);
-
- switch(attr->type)
- {
- /*
- * Start date for the certificate.
- */
- case CKA_START_DATE:
- ftime = &cdata->cert->pCertInfo->NotBefore;
- break;
-
- /*
- * End date for the certificate.
- */
- case CKA_END_DATE:
- ftime = &cdata->cert->pCertInfo->NotAfter;
- break;
-
- default:
- return CKR_ATTRIBUTE_TYPE_INVALID;
- };
-
- return ckcapi_return_filetime(attr, ftime);
-}
-
static void
cert_data_release(void* data)
{
@@ -279,7 +246,6 @@ static const CkCapiObjectDataVtable cert_objdata_vtable = {
cert_bool_attribute,
cert_ulong_attribute,
cert_bytes_attribute,
- cert_date_attribute,
cert_data_release,
};
@@ -560,7 +526,17 @@ ckcapi_cert_certificate_get_bytes(PCCERT_CONTEXT cert, CK_ATTRIBUTE_PTR attr)
case CKA_HASH_OF_ISSUER_PUBLIC_KEY:
return ckcapi_return_data(attr, "", 0);
- /* Not supported */
+ /*
+ * Start date for the certificate.
+ */
+ case CKA_START_DATE:
+ return ckcapi_return_filetime(attr, &cert->pCertInfo->NotBefore);
+
+ /*
+ * End date for the certificate.
+ */
+ case CKA_END_DATE:
+ return ckcapi_return_filetime(attr, &cert->pCertInfo->NotAfter);
default:
return CKR_ATTRIBUTE_TYPE_INVALID;