Copyright Digital Equipment Corp. All rights reserved.

HRS_Enroll

NAME
  CSSM_HRS_Enroll, HRS_Enroll

SYNOPSIS

#include <hrs.h>

API
  CSSM_RETURN CSSMAPI CSSM_HRS_Enroll(
                         CSSM_HRS_HANDLE ModuleHandle,
                         CSSM_HRS_BIR_PURPOSE Purpose,
                         const CSSM_HRS_INPUT_BIR *StoredTemplate,
                         CSSM_HRS_BIR_HANDLE_PTR NewTemplate,
                         const CSSM_DATA *Payload,
                         sint32 Timeout
                         CSSM_HRS_BIR_HANDLE_PTR AuditData);
SPI
  CSSM_RETURN CSSMHRI HRS_Enroll(
                         CSSM_HRS_HANDLE ModuleHandle,
                         CSSM_HRS_BIR_PURPOSE Purpose,
                         const CSSM_HRS_INPUT_BIR *StoredTemplate,
                         CSSM_HRS_BIR_HANDLE_PTR NewTemplate,
                         const CSSM_DATA *Payload,
                         sint32 Timeout
                         CSSM_HRS_BIR_HANDLE_PTR AuditData);

LIBRARY
  HRS Extensible Module Manager (CDSA$INHRSEMM_SHR.EXE)

PARAMETERS
  The parameter definitions are the same for the API and the SPI.

  ModuleHandle (input)            The handle of the attached HRS
                                  service provider.
  Purpose (input)                 A value indicating the desired
                                  purpose of Enrollment.
  StoredTemplate (input/optional) Optionally, the BIR to be adapted,
                                  or its key in a database, or its
                                  handle.
  NewTemplate (output)            A handle to a newly created template
                                  that is derived from the new raw
                                  samples and (optionally) the
                                  StoredTemplate.
  Payload (input/optional)        A pointer to data that will be
                                  wrapped inside the newly created
                                  template. This parameter is
                                  ignored, if NULL.
  Timeout (input)                 An integer specifying the timeout
                                  value (in milliseconds) for the
                                  operation. If this timeout is
                                  reached, the function returns an
                                  error, and no results. This value
                                  can be any positive number. A -1
                                  value means the BSP's default timeout
                                  value will be used.
  AuditData (output/optional)     A handle to a BIR containing
                                  biometric audit data. This data may be
                                  used to provide human-identifiable
                                  data of the person at the device.
                                  If the pointer is NULL on input, no
                                  audit data is collected. Not all HRS
                                  service providers support the
                                  collection of audit data.  An HRS
                                  service provider may return a handle
                                  value of CSSM_HRS_UNSUPPORTED_BIR_HANDLE
                                  to indicate AuditData is not supported,
                                  or a value of
                                  CSSM_HRS_INVALID_BIR_HANDLE to indicate
                                  that no audit data is available.

DESCRIPTION
  This function captures biometric data from the attached device for
   the purpose of creating a ProcessedBIR for the purpose of
  enrollment. The Enroll function may be split between client and
  server if a streaming callback has been set. Either the client or
  the server can initiate the operation.

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_CSSM_NOT_INITIALIZED
  CSSMERR_CSSM_FUNCTION_FAILED
  CSSMERR_CSSM_FUNCTION_NOT_IMPLEMENTED
  CSSMERR_CSSM_FUNCTION_INTEGRITY_FAIL
  CSSMERR_HRS_PURPOSE_NOT_SUPPORTED
  CSSMERR_HRS_RECORD_NOT_FOUND
  CSSMERR_HRS_TIMEOUT_EXPIRED
  CSSMERR_HRS_TOO_MANY_HANDLES
  CSSMERR_HRS_UNABLE_TO_CAPTURE
  CSSMERR_HRS_UNABLE_TO_WRAP_PAYLOAD