CSSM_SignDataFinal
CSSM_RETURN CSSMAPI CSSM_SignDataFinal
(CSSM_CC_HANDLE CCHandle,
CSSM_DATA_PTR Signature)
This function completes the final stage of the sign data function.
- CCHandle (input)
The handle that describes the context of this cryptographic operation used to link to the CSP-managed information.
- Signature (output)
A pointer to the CSSM_DATA structure for the signature.
A CSSM return value. This function returns CSSM_OK if successful, and returns an error code if an error has occurred.
- CSSM__MANIFEST_ATTRIBUTES_NOT_FOUND
No capability attribute found in the Manifest.
- CSSM__CONTEXT_FILTER_FAILED
Requested context was not in the manifest capability attribute.
- CSSM__CSP_INVALID_CONTEXT_HANDLE
Invalid context handle.
- CSSM__CSP_INVALID_DATA_POINTER
Invalid output CSSM_DATA pointer.
- CSSM__CSP_INVALID_DATA
Invalid output CSSM_DATA buffer.
- CSSM__NOT_ENOUGH_BUFFER
The output buffer is not big enough.
- CSSM__CSP_MEMORY_ERROR
Not enough memory to allocate.
- CSSM__CSP_STAGED_OPERATION_UNSUPPORTED
Staged operation unsupported.
- CSSM__CSP_STAGED_OPERATION_FAILED
Staged Cryptographic operation failed.
- CSSM__CSP_CALLBACK_FAILED
Passphrase callback function failed.
- CSSM__CSP_PRIKEY_NOT_FOUND
Cannot find the corresponding private key.
- CSSM__CSP_PASSPHRASE_INVALID
Passphrase length error or passphrase badly formed.
- CSSM__CSP_PASSPHRASE_INCORRECT
Passphrase incorrect.
- CSSM__CSP_PRIKEY_ERROR
Error in getting the raw private key or private key storage error.
- CSSM__CSP_NOT_ENOUGH_BUFFER
The output buffer is not big enough.
- CSSM__CSP_GET_STAGED_INFO_ERROR
Cannot find or get the staged information.
Comments
The output is returned to the caller either by filling the caller-specified buffer or by using the application's declared memory allocation functions to allocate buffer space. To specify a specific, pre-allocated output buffer, the caller must provide an array of one or more CSSM_DATA structures each one containing a Length field value greater than zero and a non-NULL Data pointer field value. To specify automatic output buffer allocation by the CSP, the caller must provide an array of one or more CSSM_DATA structures each containing a Length field value equal to zero and a NULL Data pointer field value. The application is always responsible for de-allocating the memory when it is no longer needed. If the CSSM_DATA_PTR parameter is NULL (that is, does not point to an array of CSSM_DATA structures) or the number of CSSM_DATA structures is specified as zero, the error code CSSM_CSP_INVALID_DATA_POINTER is returned.
CSSM_SignData, CSSM_SignDataInit, CSSM_SignDataUpdate
Contents | Next section | Index |