KM_ExportToSCwMethod
Export one or more objects to one or more smart cards. It allows users to select the method used to generate component keys.
NOTE This function uses the following callbacks:
Synopsis
#include <kmlib.h>
CK_RV KM_ExportToSCwMethod (
CK_SESSION_HANDLE hSession,
CK_CHAR * pUserPIN,
CK_SIZE userPinLen,
CK_OBJECT_HANDLE * phWrapeeObjs,
CK_COUNT numWrapeeObjs,
CK_OBJECT_HANDLE hWrapKey,
CK_SLOT_ID cardSlotId,
uint32 deriveMech
);
Parameter | Description |
---|---|
hSession | Handle to an open session. |
pUserPIN | The Token's User PIN. |
userPinLen | Length of user PIN number |
phWrapeeObjs | Array of handles to objects that are to be exported. |
numWrapeeObjs | Number of objects in phWrapeeObjs. |
hWrapKey | Label of the wrapping key. For multiple custodian export, this parameter is set to CK_INVALID_HANDLE. |
cardSlotId | ID of the smart card slot to write to. |
deriveMech |
Mechanism used to derive component keys: >KM_XOR_MECHANISM >KM_NOFM_MECHANISM |
Returns
CKR_ARGUMENTS_BAD
CKR_ATTRIBUTE_READ_ONLY
CKR_ATTRIBUTE_SENSITIVE
CKR_ATTRIBUTE_TYPE_INVALID
CKR_ATTRIBUTE_VALUE_INVALID
CKR_BUFFER_TOO_SMALL
CKR_CRYPTOKI_NOT_INITIALIZED
CKR_DATA_INVALID
CKR_DATA_LEN_RANGE
CKR_DEVICE_ERROR
CKR_DEVICE_MEMORY
CKR_DEVICE_REMOVED
CKR_FUNCTION_CANCELED
CKR_FUNCTION_FAILED
CKR_GENERAL_ERROR
CKR_HOST_MEMORY
CKR_INFORMATION_SENSITIVE
CKR_KEY_FUNCTION_NOT_PERMITTED
CKR_KEY_HANDLE_INVALID
CKR_KEY_NOT_WRAPPABLE
CKR_KEY_SIZE_RANGE
CKR_KEY_TYPE_INCONSISTENT
CKR_KEY_UNEXTRACTABLE
CKR_MECHANISM_INVALID
CKR_MECHANISM_PARAM_INVALID
CKR_OBJECT_HANDLE_INVALID
CKR_OK
CKR_OPERATION_ACTIVE
CKR_OPERATION_NOT_INITIALIZED
CKR_PIN_EXPIRED
CKR_PIN_INCORRECT
CKR_PIN_INVALID
CKR_PIN_LEN_RANGE
CKR_PIN_LOCKED
CKR_SESSION_CLOSED
CKR_SESSION_COUNT
CKR_SESSION_HANDLE_INVALID
CKR_SESSION_PARALLEL_NOT_SUPPORTED
CKR_SESSION_READ_ONLY
CKR_SESSION_READ_ONLY_EXISTS
CKR_SESSION_READ_WRITE_SO_EXISTS
CKR_SLOT_ID_INVALID
CKR_TEMPLATE_INCOMPLETE
CKR_TEMPLATE_INCONSISTENT
CKR_TOKEN_NOT_PRESENT
CKR_TOKEN_NOT_RECOGNIZED
CKR_TOKEN_WRITE_PROTECTED
CKR_USER_ALREADY_LOGGED_IN
CKR_USER_ANOTHER_ALREADY_LOGGED_IN
CKR_USER_NOT_LOGGED_IN
CKR_USER_PIN_NOT_INITIALIZED
CKR_USER_TOO_MANY_TYPES
CKR_USER_TYPE_INVALID
CKR_WRAPPING_KEY_HANDLE_INVALID
CKR_WRAPPING_KEY_SIZE_RANGE
CKR_WRAPPING_KEY_TYPE_INCONSISTENT