Struct cryptoki_sys::Pkcs11
source · pub struct Pkcs11 {Show 68 fields
pub C_Initialize: Result<unsafe extern "C" fn(init_args: *mut c_void) -> CK_RV, Error>,
pub C_Finalize: Result<unsafe extern "C" fn(pReserved: *mut c_void) -> CK_RV, Error>,
pub C_GetInfo: Result<unsafe extern "C" fn(info: *mut _CK_INFO) -> CK_RV, Error>,
pub C_GetFunctionList: Result<unsafe extern "C" fn(function_list: *mut *mut _CK_FUNCTION_LIST) -> CK_RV, Error>,
pub C_GetSlotList: Result<unsafe extern "C" fn(token_present: c_uchar, slot_list: *mut CK_SLOT_ID, ulCount: *mut c_ulong) -> CK_RV, Error>,
pub C_GetSlotInfo: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, info: *mut _CK_SLOT_INFO) -> CK_RV, Error>,
pub C_GetTokenInfo: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, info: *mut _CK_TOKEN_INFO) -> CK_RV, Error>,
pub C_WaitForSlotEvent: Result<unsafe extern "C" fn(flags: CK_FLAGS, slot: *mut CK_SLOT_ID, pReserved: *mut c_void) -> CK_RV, Error>,
pub C_GetMechanismList: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, mechanism_list: *mut CK_MECHANISM_TYPE, ulCount: *mut c_ulong) -> CK_RV, Error>,
pub C_GetMechanismInfo: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, type_: CK_MECHANISM_TYPE, info: *mut _CK_MECHANISM_INFO) -> CK_RV, Error>,
pub C_InitToken: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, pin: *mut c_uchar, pin_len: c_ulong, label: *mut c_uchar) -> CK_RV, Error>,
pub C_InitPIN: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, pin: *mut c_uchar, pin_len: c_ulong) -> CK_RV, Error>,
pub C_SetPIN: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, old_pin: *mut c_uchar, old_len: c_ulong, new_pin: *mut c_uchar, new_len: c_ulong) -> CK_RV, Error>,
pub C_OpenSession: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, flags: CK_FLAGS, application: *mut c_void, notify: CK_NOTIFY, session: *mut CK_SESSION_HANDLE) -> CK_RV, Error>,
pub C_CloseSession: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>,
pub C_CloseAllSessions: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID) -> CK_RV, Error>,
pub C_GetSessionInfo: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, info: *mut _CK_SESSION_INFO) -> CK_RV, Error>,
pub C_GetOperationState: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, operation_state: *mut c_uchar, operation_state_len: *mut c_ulong) -> CK_RV, Error>,
pub C_SetOperationState: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, operation_state: *mut c_uchar, operation_state_len: c_ulong, encryption_key: CK_OBJECT_HANDLE, authentiation_key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_Login: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, user_type: CK_USER_TYPE, pin: *mut c_uchar, pin_len: c_ulong) -> CK_RV, Error>,
pub C_Logout: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>,
pub C_CreateObject: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, object: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_CopyObject: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, new_object: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_DestroyObject: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_GetObjectSize: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, size: *mut c_ulong) -> CK_RV, Error>,
pub C_GetAttributeValue: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong) -> CK_RV, Error>,
pub C_SetAttributeValue: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong) -> CK_RV, Error>,
pub C_FindObjectsInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong) -> CK_RV, Error>,
pub C_FindObjects: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: *mut CK_OBJECT_HANDLE, max_object_count: c_ulong, object_count: *mut c_ulong) -> CK_RV, Error>,
pub C_FindObjectsFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>,
pub C_EncryptInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_Encrypt: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, encrypted_data: *mut c_uchar, encrypted_data_len: *mut c_ulong) -> CK_RV, Error>,
pub C_EncryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_EncryptFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, last_encrypted_part: *mut c_uchar, last_encrypted_part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DecryptInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_Decrypt: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_data: *mut c_uchar, encrypted_data_len: c_ulong, data: *mut c_uchar, data_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DecryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DecryptFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, last_part: *mut c_uchar, last_part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DigestInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM) -> CK_RV, Error>,
pub C_Digest: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, digest: *mut c_uchar, digest_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DigestUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong) -> CK_RV, Error>,
pub C_DigestKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_DigestFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, digest: *mut c_uchar, digest_len: *mut c_ulong) -> CK_RV, Error>,
pub C_SignInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_Sign: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: *mut c_ulong) -> CK_RV, Error>,
pub C_SignUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong) -> CK_RV, Error>,
pub C_SignFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: *mut c_ulong) -> CK_RV, Error>,
pub C_SignRecoverInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_SignRecover: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: *mut c_ulong) -> CK_RV, Error>,
pub C_VerifyInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_Verify: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: c_ulong) -> CK_RV, Error>,
pub C_VerifyUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong) -> CK_RV, Error>,
pub C_VerifyFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: c_ulong) -> CK_RV, Error>,
pub C_VerifyRecoverInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_VerifyRecover: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: c_ulong, data: *mut c_uchar, data_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DigestEncryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DecryptDigestUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_SignEncryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_DecryptVerifyUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong) -> CK_RV, Error>,
pub C_GenerateKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_GenerateKeyPair: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, public_key_template: *mut _CK_ATTRIBUTE, public_key_attribute_count: c_ulong, private_key_template: *mut _CK_ATTRIBUTE, private_key_attribute_count: c_ulong, public_key: *mut CK_OBJECT_HANDLE, private_key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_WrapKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, wrapping_key: CK_OBJECT_HANDLE, key: CK_OBJECT_HANDLE, wrapped_key: *mut c_uchar, wrapped_key_len: *mut c_ulong) -> CK_RV, Error>,
pub C_UnwrapKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, unwrapping_key: CK_OBJECT_HANDLE, wrapped_key: *mut c_uchar, wrapped_key_len: c_ulong, templ: *mut _CK_ATTRIBUTE, attribute_count: c_ulong, key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_DeriveKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, base_key: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, attribute_count: c_ulong, key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>,
pub C_SeedRandom: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, seed: *mut c_uchar, seed_len: c_ulong) -> CK_RV, Error>,
pub C_GenerateRandom: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, random_data: *mut c_uchar, random_len: c_ulong) -> CK_RV, Error>,
pub C_GetFunctionStatus: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>,
pub C_CancelFunction: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>,
/* private fields */
}
Fields§
§C_Initialize: Result<unsafe extern "C" fn(init_args: *mut c_void) -> CK_RV, Error>
§C_Finalize: Result<unsafe extern "C" fn(pReserved: *mut c_void) -> CK_RV, Error>
§C_GetInfo: Result<unsafe extern "C" fn(info: *mut _CK_INFO) -> CK_RV, Error>
§C_GetFunctionList: Result<unsafe extern "C" fn(function_list: *mut *mut _CK_FUNCTION_LIST) -> CK_RV, Error>
§C_GetSlotList: Result<unsafe extern "C" fn(token_present: c_uchar, slot_list: *mut CK_SLOT_ID, ulCount: *mut c_ulong) -> CK_RV, Error>
§C_GetSlotInfo: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, info: *mut _CK_SLOT_INFO) -> CK_RV, Error>
§C_GetTokenInfo: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, info: *mut _CK_TOKEN_INFO) -> CK_RV, Error>
§C_WaitForSlotEvent: Result<unsafe extern "C" fn(flags: CK_FLAGS, slot: *mut CK_SLOT_ID, pReserved: *mut c_void) -> CK_RV, Error>
§C_GetMechanismList: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, mechanism_list: *mut CK_MECHANISM_TYPE, ulCount: *mut c_ulong) -> CK_RV, Error>
§C_GetMechanismInfo: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, type_: CK_MECHANISM_TYPE, info: *mut _CK_MECHANISM_INFO) -> CK_RV, Error>
§C_InitToken: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, pin: *mut c_uchar, pin_len: c_ulong, label: *mut c_uchar) -> CK_RV, Error>
§C_InitPIN: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, pin: *mut c_uchar, pin_len: c_ulong) -> CK_RV, Error>
§C_SetPIN: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, old_pin: *mut c_uchar, old_len: c_ulong, new_pin: *mut c_uchar, new_len: c_ulong) -> CK_RV, Error>
§C_OpenSession: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID, flags: CK_FLAGS, application: *mut c_void, notify: CK_NOTIFY, session: *mut CK_SESSION_HANDLE) -> CK_RV, Error>
§C_CloseSession: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>
§C_CloseAllSessions: Result<unsafe extern "C" fn(slotID: CK_SLOT_ID) -> CK_RV, Error>
§C_GetSessionInfo: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, info: *mut _CK_SESSION_INFO) -> CK_RV, Error>
§C_GetOperationState: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, operation_state: *mut c_uchar, operation_state_len: *mut c_ulong) -> CK_RV, Error>
§C_SetOperationState: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, operation_state: *mut c_uchar, operation_state_len: c_ulong, encryption_key: CK_OBJECT_HANDLE, authentiation_key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_Login: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, user_type: CK_USER_TYPE, pin: *mut c_uchar, pin_len: c_ulong) -> CK_RV, Error>
§C_Logout: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>
§C_CreateObject: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, object: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_CopyObject: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, new_object: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_DestroyObject: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_GetObjectSize: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, size: *mut c_ulong) -> CK_RV, Error>
§C_GetAttributeValue: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong) -> CK_RV, Error>
§C_SetAttributeValue: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong) -> CK_RV, Error>
§C_FindObjectsInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong) -> CK_RV, Error>
§C_FindObjects: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, object: *mut CK_OBJECT_HANDLE, max_object_count: c_ulong, object_count: *mut c_ulong) -> CK_RV, Error>
§C_FindObjectsFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>
§C_EncryptInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_Encrypt: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, encrypted_data: *mut c_uchar, encrypted_data_len: *mut c_ulong) -> CK_RV, Error>
§C_EncryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong) -> CK_RV, Error>
§C_EncryptFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, last_encrypted_part: *mut c_uchar, last_encrypted_part_len: *mut c_ulong) -> CK_RV, Error>
§C_DecryptInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_Decrypt: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_data: *mut c_uchar, encrypted_data_len: c_ulong, data: *mut c_uchar, data_len: *mut c_ulong) -> CK_RV, Error>
§C_DecryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong) -> CK_RV, Error>
§C_DecryptFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, last_part: *mut c_uchar, last_part_len: *mut c_ulong) -> CK_RV, Error>
§C_DigestInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM) -> CK_RV, Error>
§C_Digest: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, digest: *mut c_uchar, digest_len: *mut c_ulong) -> CK_RV, Error>
§C_DigestUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong) -> CK_RV, Error>
§C_DigestKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_DigestFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, digest: *mut c_uchar, digest_len: *mut c_ulong) -> CK_RV, Error>
§C_SignInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_Sign: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: *mut c_ulong) -> CK_RV, Error>
§C_SignUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong) -> CK_RV, Error>
§C_SignFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: *mut c_ulong) -> CK_RV, Error>
§C_SignRecoverInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_SignRecover: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: *mut c_ulong) -> CK_RV, Error>
§C_VerifyInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_Verify: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: c_ulong) -> CK_RV, Error>
§C_VerifyUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong) -> CK_RV, Error>
§C_VerifyFinal: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: c_ulong) -> CK_RV, Error>
§C_VerifyRecoverInit: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_VerifyRecover: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: c_ulong, data: *mut c_uchar, data_len: *mut c_ulong) -> CK_RV, Error>
§C_DigestEncryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong) -> CK_RV, Error>
§C_DecryptDigestUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong) -> CK_RV, Error>
§C_SignEncryptUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong) -> CK_RV, Error>
§C_DecryptVerifyUpdate: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong) -> CK_RV, Error>
§C_GenerateKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_GenerateKeyPair: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, public_key_template: *mut _CK_ATTRIBUTE, public_key_attribute_count: c_ulong, private_key_template: *mut _CK_ATTRIBUTE, private_key_attribute_count: c_ulong, public_key: *mut CK_OBJECT_HANDLE, private_key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_WrapKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, wrapping_key: CK_OBJECT_HANDLE, key: CK_OBJECT_HANDLE, wrapped_key: *mut c_uchar, wrapped_key_len: *mut c_ulong) -> CK_RV, Error>
§C_UnwrapKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, unwrapping_key: CK_OBJECT_HANDLE, wrapped_key: *mut c_uchar, wrapped_key_len: c_ulong, templ: *mut _CK_ATTRIBUTE, attribute_count: c_ulong, key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_DeriveKey: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, base_key: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, attribute_count: c_ulong, key: *mut CK_OBJECT_HANDLE) -> CK_RV, Error>
§C_SeedRandom: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, seed: *mut c_uchar, seed_len: c_ulong) -> CK_RV, Error>
§C_GenerateRandom: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE, random_data: *mut c_uchar, random_len: c_ulong) -> CK_RV, Error>
§C_GetFunctionStatus: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>
§C_CancelFunction: Result<unsafe extern "C" fn(session: CK_SESSION_HANDLE) -> CK_RV, Error>
Implementations§
source§impl Pkcs11
impl Pkcs11
pub unsafe fn new<P>(path: P) -> Result<Self, Error>where P: AsRef<OsStr>,
pub unsafe fn from_library<L>(library: L) -> Result<Self, Error>where L: Into<Library>,
pub unsafe fn C_Initialize(&self, init_args: *mut c_void) -> CK_RV
pub unsafe fn C_Finalize(&self, pReserved: *mut c_void) -> CK_RV
pub unsafe fn C_GetInfo(&self, info: *mut _CK_INFO) -> CK_RV
pub unsafe fn C_GetFunctionList( &self, function_list: *mut *mut _CK_FUNCTION_LIST ) -> CK_RV
pub unsafe fn C_GetSlotList( &self, token_present: c_uchar, slot_list: *mut CK_SLOT_ID, ulCount: *mut c_ulong ) -> CK_RV
pub unsafe fn C_GetSlotInfo( &self, slotID: CK_SLOT_ID, info: *mut _CK_SLOT_INFO ) -> CK_RV
pub unsafe fn C_GetTokenInfo( &self, slotID: CK_SLOT_ID, info: *mut _CK_TOKEN_INFO ) -> CK_RV
pub unsafe fn C_WaitForSlotEvent( &self, flags: CK_FLAGS, slot: *mut CK_SLOT_ID, pReserved: *mut c_void ) -> CK_RV
pub unsafe fn C_GetMechanismList( &self, slotID: CK_SLOT_ID, mechanism_list: *mut CK_MECHANISM_TYPE, ulCount: *mut c_ulong ) -> CK_RV
pub unsafe fn C_GetMechanismInfo( &self, slotID: CK_SLOT_ID, type_: CK_MECHANISM_TYPE, info: *mut _CK_MECHANISM_INFO ) -> CK_RV
pub unsafe fn C_InitToken( &self, slotID: CK_SLOT_ID, pin: *mut c_uchar, pin_len: c_ulong, label: *mut c_uchar ) -> CK_RV
pub unsafe fn C_InitPIN( &self, session: CK_SESSION_HANDLE, pin: *mut c_uchar, pin_len: c_ulong ) -> CK_RV
pub unsafe fn C_SetPIN( &self, session: CK_SESSION_HANDLE, old_pin: *mut c_uchar, old_len: c_ulong, new_pin: *mut c_uchar, new_len: c_ulong ) -> CK_RV
pub unsafe fn C_OpenSession( &self, slotID: CK_SLOT_ID, flags: CK_FLAGS, application: *mut c_void, notify: CK_NOTIFY, session: *mut CK_SESSION_HANDLE ) -> CK_RV
pub unsafe fn C_CloseSession(&self, session: CK_SESSION_HANDLE) -> CK_RV
pub unsafe fn C_CloseAllSessions(&self, slotID: CK_SLOT_ID) -> CK_RV
pub unsafe fn C_GetSessionInfo( &self, session: CK_SESSION_HANDLE, info: *mut _CK_SESSION_INFO ) -> CK_RV
pub unsafe fn C_GetOperationState( &self, session: CK_SESSION_HANDLE, operation_state: *mut c_uchar, operation_state_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_SetOperationState( &self, session: CK_SESSION_HANDLE, operation_state: *mut c_uchar, operation_state_len: c_ulong, encryption_key: CK_OBJECT_HANDLE, authentiation_key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_Login( &self, session: CK_SESSION_HANDLE, user_type: CK_USER_TYPE, pin: *mut c_uchar, pin_len: c_ulong ) -> CK_RV
pub unsafe fn C_Logout(&self, session: CK_SESSION_HANDLE) -> CK_RV
pub unsafe fn C_CreateObject( &self, session: CK_SESSION_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, object: *mut CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_CopyObject( &self, session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, new_object: *mut CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_DestroyObject( &self, session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_GetObjectSize( &self, session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, size: *mut c_ulong ) -> CK_RV
pub unsafe fn C_GetAttributeValue( &self, session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong ) -> CK_RV
pub unsafe fn C_SetAttributeValue( &self, session: CK_SESSION_HANDLE, object: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong ) -> CK_RV
pub unsafe fn C_FindObjectsInit( &self, session: CK_SESSION_HANDLE, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong ) -> CK_RV
pub unsafe fn C_FindObjects( &self, session: CK_SESSION_HANDLE, object: *mut CK_OBJECT_HANDLE, max_object_count: c_ulong, object_count: *mut c_ulong ) -> CK_RV
pub unsafe fn C_FindObjectsFinal(&self, session: CK_SESSION_HANDLE) -> CK_RV
pub unsafe fn C_EncryptInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_Encrypt( &self, session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, encrypted_data: *mut c_uchar, encrypted_data_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_EncryptUpdate( &self, session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_EncryptFinal( &self, session: CK_SESSION_HANDLE, last_encrypted_part: *mut c_uchar, last_encrypted_part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DecryptInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_Decrypt( &self, session: CK_SESSION_HANDLE, encrypted_data: *mut c_uchar, encrypted_data_len: c_ulong, data: *mut c_uchar, data_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DecryptUpdate( &self, session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DecryptFinal( &self, session: CK_SESSION_HANDLE, last_part: *mut c_uchar, last_part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DigestInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM ) -> CK_RV
pub unsafe fn C_Digest( &self, session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, digest: *mut c_uchar, digest_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DigestUpdate( &self, session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong ) -> CK_RV
pub unsafe fn C_DigestKey( &self, session: CK_SESSION_HANDLE, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_DigestFinal( &self, session: CK_SESSION_HANDLE, digest: *mut c_uchar, digest_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_SignInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_Sign( &self, session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_SignUpdate( &self, session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong ) -> CK_RV
pub unsafe fn C_SignFinal( &self, session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_SignRecoverInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_SignRecover( &self, session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_VerifyInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_Verify( &self, session: CK_SESSION_HANDLE, data: *mut c_uchar, data_len: c_ulong, signature: *mut c_uchar, signature_len: c_ulong ) -> CK_RV
pub unsafe fn C_VerifyUpdate( &self, session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong ) -> CK_RV
pub unsafe fn C_VerifyFinal( &self, session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: c_ulong ) -> CK_RV
pub unsafe fn C_VerifyRecoverInit( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, key: CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_VerifyRecover( &self, session: CK_SESSION_HANDLE, signature: *mut c_uchar, signature_len: c_ulong, data: *mut c_uchar, data_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DigestEncryptUpdate( &self, session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DecryptDigestUpdate( &self, session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_SignEncryptUpdate( &self, session: CK_SESSION_HANDLE, part: *mut c_uchar, part_len: c_ulong, encrypted_part: *mut c_uchar, encrypted_part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_DecryptVerifyUpdate( &self, session: CK_SESSION_HANDLE, encrypted_part: *mut c_uchar, encrypted_part_len: c_ulong, part: *mut c_uchar, part_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_GenerateKey( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, templ: *mut _CK_ATTRIBUTE, ulCount: c_ulong, key: *mut CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_GenerateKeyPair( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, public_key_template: *mut _CK_ATTRIBUTE, public_key_attribute_count: c_ulong, private_key_template: *mut _CK_ATTRIBUTE, private_key_attribute_count: c_ulong, public_key: *mut CK_OBJECT_HANDLE, private_key: *mut CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_WrapKey( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, wrapping_key: CK_OBJECT_HANDLE, key: CK_OBJECT_HANDLE, wrapped_key: *mut c_uchar, wrapped_key_len: *mut c_ulong ) -> CK_RV
pub unsafe fn C_UnwrapKey( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, unwrapping_key: CK_OBJECT_HANDLE, wrapped_key: *mut c_uchar, wrapped_key_len: c_ulong, templ: *mut _CK_ATTRIBUTE, attribute_count: c_ulong, key: *mut CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_DeriveKey( &self, session: CK_SESSION_HANDLE, mechanism: *mut _CK_MECHANISM, base_key: CK_OBJECT_HANDLE, templ: *mut _CK_ATTRIBUTE, attribute_count: c_ulong, key: *mut CK_OBJECT_HANDLE ) -> CK_RV
pub unsafe fn C_SeedRandom( &self, session: CK_SESSION_HANDLE, seed: *mut c_uchar, seed_len: c_ulong ) -> CK_RV
pub unsafe fn C_GenerateRandom( &self, session: CK_SESSION_HANDLE, random_data: *mut c_uchar, random_len: c_ulong ) -> CK_RV
pub unsafe fn C_GetFunctionStatus(&self, session: CK_SESSION_HANDLE) -> CK_RV
pub unsafe fn C_CancelFunction(&self, session: CK_SESSION_HANDLE) -> CK_RV
Auto Trait Implementations§
impl !RefUnwindSafe for Pkcs11
impl Send for Pkcs11
impl Sync for Pkcs11
impl Unpin for Pkcs11
impl !UnwindSafe for Pkcs11
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more