Copyright Digital Equipment Corp. All rights reserved.

TP_CertCreateTemplate

NAME
  TP_CertCreateTemplate,
  CSSM_TP_CertCreateTemplate - Allocate and initialize template
                               memory (CDSA)

SYNOPSIS
  # include <cssm.h>

   API:
       CSSM_RETURN CSSMAPI CSSM_TP_CertCreateTemplate
       (CSSM_TP_HANDLE TPHandle,
       CSSM_CL_HANDLE CLHandle,
       uint32 NumberOfFields,
       const CSSM_FIELD *CertFields,
       CSSM_DATA_PTR CertTemplate)
   SPI:
       CSSM_RETURN CSSMTPI TP_CertCreateTemplate
       (CSSM_TP_HANDLE TPHandle,
       CSSM_CL_HANDLE CLHandle,
       uint32 NumberOfFields,
       const CSSM_FIELD *CertFields,
       CSSM_DATA_PTR CertTemplate)

LIBRARY
  Common Security Services Manager library (CDSA$INCSSM300_SHR.EXE)

PARAMETERS
  TPHandle (input)
          The handle that describes the add-in trust policy module used
          to perform this function.

  CLHandle (input)
          The handle that describes the certificate library module used
          to perform this function.

  NumberOfFields (input)
          The number of certificate field values specified in the
          CertFields.

  CertFields (input)
          A pointer to an array of OID/value pairs that identifies the
          field values to initialize a new certificate.

  CertTemplate (output)
          A pointer to a CSSM_DATA structure that will contain the
          unsigned certificate template as a result of this function.

DESCRIPTION
  This function allocates and initializes memory for an encoded
  certificate template output in CertTemplate->Data. The template values
  are specified by the input OID/value pairs contained in CertFields.
  The initialization process includes encoding all certificate field
  values according to the certificate type and certificate template
  encoding supported by the trust policy library module. The CertTemplate
  output is an unsigned certificate template in the format supported by
  the TP.

  The memory for CertTemplate->Data is allocated by the service
  provider using the calling application's memory management routines.
  The application must deallocate the memory.

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.  See CDSA.

       CSSMERR_TP_INVALID_CL_HANDLE
       CSSMERR_TP_INVALID_FIELD_POINTER
       CSSMERR_TP_UNKNOWN_TAG
       CSSMERR_TP_INVALID_NUMBER_OF_FIELDS

SEE ALSO
  Books

  Intel CDSA Application Developer's Guide (see CDSA)

  Other Help Topics

  Functions for the CSSM API:

      CSSM_TP_CertGetAllTemplateFields
      CSSM_TP_CertSign

  Functions for the TP SPI:

      TP_CertGetAllTemplateFields
      TP_CertSign