KM_ModifyBoolAttrs

Toggles the Boolean attributes of an object.

NOTE   This function uses the following callback:

>UICB_ShowMsg_t

Synopsis

#include <kmlib.h>

CK_RV KM_ModifyBoolAttrs ( 
   CK_SESSION_HANDLE   hSession, 
   CK_CHAR *           pUserPin,
   CK_SIZE             userPinLen,
   CK_CHAR *           pSoPin,
   CK_SIZE             soPinLen, 
   CK_OBJECT_HANDLE    hObj,
   CK_ATTRIBUTE_TYPE * pAttrs, 
   CK_COUNT            numAttrs
);
Parameter Description
hSession Handle to an open session.
pUserPin Token User’s PIN. If setting the CKA_EXPORT attribute, then the Token SO PIN is required. In this case, the session is logged out, then the SO is logged in to perform the operation, and eventually the User is logged back in.
userPinLen Length of the users PIN.
pSoPin

Token SO PIN. If setting the CKA_EXPORT attribute, then the Token SO PIN is required. In this case, the session is logged out, then the SO is logged in to perform the operation, and eventually the User is logged back in. If the SO PIN is not provided, and is required, then it is prompted for.

soPinLen Length of the SO PIN.
hObj Handle to the object whose attributes are to be toggled.
pAttrs

Array of attribute types to modify. Each attribute specified in the array will be toggled.

numAttrs

The number of attributes to be toggled.

Returns

CKR_ARGUMENTS_BAD
CKR_ATTRIBUTE_SENSITIVE
CKR_ATTRIBUTE_TYPE_INVALID
CKR_BUFFER_TOO_SMALL
CKR_CRYPTOKI_NOT_INITIALIZED
CKR_DEVICE_ERROR
CKR_DEVICE_MEMORY
CKR_DEVICE_REMOVED
CKR_FUNCTION_FAILED
CKR_GENERAL_ERROR
CKR_HOST_MEMORY
CKR_OBJECT_HANDLE_INVALID
CKR_OK
CKR_PIN_EXPIRED
CKR_PIN_INCORRECT
CKR_PIN_LOCKED
CKR_SESSION_CLOSED
CKR_SESSION_HANDLE_INVALID 
CKR_SESSION_READ_ONLY_EXISTS
CKR_TEMPLATE_INCONSISTENT
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