Previous section.

Common Security: CDSA and CSSM
Copyright © 1997 The Open Group

NAME

CSSM_CL_CrlAddCert

SYNOPSIS

CSSM_DATA_PTR CSSMAPI CSSM_CL_CrlAddCert
    (CSSM_CL_HANDLE CLHandle,
    CSSM_CC_HANDLE CCHandle,
    const CSSM_DATA_PTR Cert,
    const CSSM_DATA_PTR RevokerCert,
    const CSSM_FIELD_PTR CrlEntryFields,
    uint32 NumberOfFields,
    const CSSM_DATA_PTR OldCrl)

DESCRIPTION

This function revokes the input certificate by adding a record representing the certificate to the CRL. The values for the new entry in the CRL are specified by the a list of OID/value input pairs. The reason for revocation is a typical value specified in the list. The revoker's certificate is used to sign the new CRL entry. The operation is valid only if the CRL has not been closed by the process of signing the CRL (by executing the CSSM_CL_CrlSign function). Once the CRL has been signed, entries cannot be added or removed.

PARAMETERS

CLHandle (input)

The handle that describes the add-in certificate library module used to perform this function.

CCHandle (input)

The handle that describes the context of this cryptographic operation.

Cert (input)

A pointer to the CSSM_DATA structure containing the certificate to be revoked.

RevokerCert (input)

A pointer to the CSSM_DATA structure containing the revoker's certificate.

CrlEntryFields (input)

An array of OID/value pairs specifying the initial values for descriptive data fields of the new CRL entry.

NumberOfFields (input)

The number of OID/value pairs specified in the CrlEntryFields input parameter.

OldCrl (input)

A pointer to the CSSM_DATA structure containing the CRL to which the newly-revoked certificate will be added.

RETURN VALUE

A pointer to the CSSM_DATA structure containing the updated CRL. If the pointer is NULL, an error has occurred. Use CSSM_GetError to obtain the error code.

ERRORS

CSSM_CL_INVALID_CL_HANDLE

Invalid CL handle.

CSSM_CL_INVALID_CC_HANDLE

Invalid Context Handle.

CSSM_CL_INVALID_CERTIFICATE_PTR

Invalid Certificate.

CSSM_CL_INVALID_CRL

Invalid CRL.

CSSM_CL_INVALID_FIELD_POINTER

Invalid pointer input.

CSSM_CL_MEMORY_ERROR

Not enough memory to allocate the CRL.

CSSM_CL_CRL_ADD_CERT_FAIL

Unable to add certificate to CRL.

SEE ALSO


CSSM_CL_CrlRemoveCert

Why not acquire a nicely bound hard copy?
Click here to return to the publication details or order a copy of this publication.
You should also read the legal notice explaining the terms and conditions relating to the CDSA documentation.

Contents Next section Index