NAME
CSSM_HRS_CreateTemplate, HRS_CreateTemplate — Creates a new enrollment template from a BIR containing
raw biometric data
SYNOPSIS
#include <hrs.h>
API
| CSSM_RETURN CSSMAPI CSSM_HRS_CreateTemplate(CSSM_HRS_HANDLE ModuleHandle,
 const CSSM_HRS_INPUT_BIR *CapturedBIR,
 const CSSM_HRS_INPUT_BIR *StoredTemplate,
 CSSM_HRS_BIR_HANDLE_PTR NewTemplate,
 const CSSM_DATA *Payload);
 | 
SPI
| CSSM_RETURN CSSMHRI HRS_CreateTemplate(CSSM_HRS_HANDLE ModuleHandle,
 const CSSM_HRS_INPUT_BIR *CapturedBIR,
 const CSSM_HRS_INPUT_BIR *StoredTemplate,
 CSSM_HRS_BIR_HANDLE_PTR NewTemplate,
 const CSSM_DATA *Payload);
 | 
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. | 
| CapturedBIR (input) |  | The captured BIR or its handle. | 
| StoredTemplate (input/optional) | 
|  |  | Optionally, the template
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 CapturedBIR 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. | 
DESCRIPTION
This function takes a BIR containing raw biometric data for
the purpose of creating a new enrollment template. A new BIR is
constructed from the CapturedBIR, and (optionally)
it may perform an adaptation based on an existing StoredTemplate.
The old StoredTemplate remains unchanged.
If the StoredTemplate contains a payload,
the payload is not copied into the NewTemplate.
If the NewTemplate needs a payload, then that Payload must
be presented as an argument to the function.
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_CSSM_NOT_INITIALIZED
CSSMERR_CSSM_FUNCTION_FAILED
CSSMERR_CSSM_FUNCTION_NOT_IMPLEMENTED
CSSMERR_CSSM_FUNCTION_INTEGRITY_FAIL
CSSMERR_HRS_BIR_SIGNATURE_FAILURE
CSSMERR_HRS_INCONSISTENT_PURPOSE
CSSMERR_HRS_INVALID_BIR
CSSMERR_HRS_PURPOSE_NOT_SUPPORTED
CSSMERR_HRS_RECORD_NOT_FOUND
CSSMERR_HRS_TOO_MANY_HANDLES
CSSMERR_HRS_UNABLE_TO_WRAP_PAYLOAD