HP Open Source Security for OpenVMS Volume 1: Common Data Security Architecture > CDSA API Functions

CL_CertGetFirstFieldValue

 » Table of Contents

 » Glossary

 » Index

NAME

CSSM_CL_CertGetFirstFieldValue — Return the value of the certificate field (CDSA)

SYNOPSIS

# include <cssm.h>
API: 
CSSM_RETURN CSSMAPI CSSM_CL_CertGetFirstFieldValue
(CSSM_CL_HANDLE CLHandle,
const CSSM_DATA *Cert,
const CSSM_OID *CertField,
CSSM_HANDLE_PTR ResultsHandle,
uint32 *NumberOfMatchedFields,
CSSM_DATA_PTR *Value)
SPI:
CSSM_RETURN CSSMCLI CL_CertGetFirstFieldValue
(CSSM_CL_HANDLE CLHandle,
const CSSM_DATA *Cert,
const CSSM_OID *CertField,
CSSM_HANDLE_PTR ResultsHandle,
uint32 *NumberOfMatchedFields,
CSSM_DATA_PTR *Value)

LIBRARY

Common Security Services Manager library (cdsa$incssm300_shr.exe)

PARAMETERS

CLHandle (input) 

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

Cert (input) 

A pointer to the CSSM_DATA structure containing the certificate.

CertField (input)
  

A pointer to an object identifier which identifies the field value to be extracted from the Cert.

ResultsHandle (output)
  

A pointer to the CSSM_HANDLE that should be used to obtain any additional matching fields.

NumberOfMatchedFields (output)
  

The total number of fields that match the CertField OID. This count includes the first match, which was returned by this function.

Value (output) 

A pointer to the structure containing the value of the requested field. The structure and the field at I "(*Value)->Data" are allocated by the service provider. The CSSM_CL_FreeFieldValue() (CSSM API) or CL_FreeFieldValue() (CL SPI) function can be used to deallocate *Value and (*Value)->Data.

DESCRIPTION

This function returns the value of the certificate field designated by the CSSM_OID CertField. The OID also identifies the data format for the field value returned to the caller. If multiple OIDs name the same certificate field, then each such OID defines a distinct data format for the returned field value. The function CSSM_CL_CertDescribeFormat() (CSSM API), or CL_CertDescribeFormat() (CL SPI), provides a list of all CSSM_OID values supported by a certificate library module for naming fields of a certificate.

If more than one field matches the CertField OID, the first matching field will be returned. The number of matching fields is an output parameter, as is the ResultsHandle to be used to retrieve the remaining matching fields.

The set of matching fields is determined by this function. The number of matching fields and the field values do not change between this function and subsequent calls to CSSM_CL_CertGetNextFieldValue() (CSSM API), or CL_CertGetNextFieldValue() (CL SPI).

RETURN VALUE

A CSSM_RETURN value indicating success or specifying a particular error condition. The value CSSM_OK indicates success. All other values represent an error condition.

ERRORS

Errors are described in the CDSA Technical Standard.

CSSMERR_CL_INVALID_CERT_POINTER
CSSMERR_CL_UNKNOWN_FORMAT
CSSMERR_CL_UNKNOWN_TAG
CSSMERR_CL_NO_FIELD_VALUES

SEE ALSO

Books

Intel CDSA Application Developer's Guide

Online Help

Functions for the CSSM API:

CSSM_CL_CertGetNextFieldValue, CSSM_CL_CertAbortQuery, CSSM_CL_CertGetAllField, CSSM_CL_FreeFieldValue, CSSM_CL_CertDescribeFormat, CSSM_CL_FreeFieldValue

Functions for the CLI SPI:

CL_CertGetNextFieldValue, CL_CertAbortQuery, CL_CertGetAllField, CL_FreeFieldValue, CL_CertDescribeFormat, CL_FreeFieldValue