|
Botan
2.13.0
Crypto and TLS for C++11
|
Provides access to all PKCS#11 functions. More...
#include <p11.h>
Public Member Functions | |
| bool | C_CancelFunction (SessionHandle session, ReturnValue *return_value=ThrowException) const |
| bool | C_CloseAllSessions (SlotId slot_id, ReturnValue *return_value=ThrowException) const |
| bool | C_CloseSession (SessionHandle session, ReturnValue *return_value=ThrowException) const |
| bool | C_CopyObject (SessionHandle session, ObjectHandle object, Attribute *attribute_template_ptr, Ulong count, ObjectHandle *new_object_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_CreateObject (SessionHandle session, Attribute *attribute_template_ptr, Ulong count, ObjectHandle *object_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_Decrypt (SessionHandle session, Byte *encrypted_data_ptr, Ulong encrypted_data_len, Byte *data_ptr, Ulong *data_len_ptr, ReturnValue *return_value=ThrowException) const |
| template<typename TAllocA , typename TAllocB > | |
| bool | C_Decrypt (SessionHandle session, const std::vector< uint8_t, TAllocA > &encrypted_data, std::vector< uint8_t, TAllocB > &decrypted_data, ReturnValue *return_value=ThrowException) const |
| bool | C_DecryptDigestUpdate (SessionHandle session, Byte *encrypted_part_ptr, Ulong encrypted_part_len, Byte *part_ptr, Ulong *part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DecryptFinal (SessionHandle session, Byte *last_part_ptr, Ulong *last_part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DecryptInit (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_DecryptUpdate (SessionHandle session, Byte *encrypted_part_ptr, Ulong encrypted_part_len, Byte *part_ptr, Ulong *part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DecryptVerifyUpdate (SessionHandle session, Byte *encrypted_part_ptr, Ulong encrypted_part_len, Byte *part_ptr, Ulong *part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DeriveKey (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle base_key, Attribute *attribute_template_ptr, Ulong attribute_count, ObjectHandle *key_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DestroyObject (SessionHandle session, ObjectHandle object, ReturnValue *return_value=ThrowException) const |
| bool | C_Digest (SessionHandle session, Byte *data_ptr, Ulong data_len, Byte *digest_ptr, Ulong *digest_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DigestEncryptUpdate (SessionHandle session, Byte *part_ptr, Ulong part_len, Byte *encrypted_part_ptr, Ulong *encrypted_part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DigestFinal (SessionHandle session, Byte *digest_ptr, Ulong *digest_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DigestInit (SessionHandle session, Mechanism *mechanism_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_DigestKey (SessionHandle session, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_DigestUpdate (SessionHandle session, Byte *part_ptr, Ulong part_len, ReturnValue *return_value=ThrowException) const |
| bool | C_Encrypt (SessionHandle session, Byte *data_ptr, Ulong data_len, Byte *encrypted_data, Ulong *encrypted_data_len_ptr, ReturnValue *return_value=ThrowException) const |
| template<typename TAllocA , typename TAllocB > | |
| bool | C_Encrypt (SessionHandle session, const std::vector< uint8_t, TAllocA > &plaintext_data, std::vector< uint8_t, TAllocB > &encrypted_data, ReturnValue *return_value=ThrowException) const |
| bool | C_EncryptFinal (SessionHandle session, Byte *last_encrypted_part_ptr, Ulong *last_encrypted_part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_EncryptInit (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_EncryptUpdate (SessionHandle session, Byte *part_ptr, Ulong part_len, Byte *encrypted_part_ptr, Ulong *encrypted_part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_Finalize (VoidPtr reserved, ReturnValue *return_value=ThrowException) const |
| bool | C_FindObjects (SessionHandle session, ObjectHandle *object_ptr, Ulong max_object_count, Ulong *object_count_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_FindObjectsFinal (SessionHandle session, ReturnValue *return_value=ThrowException) const |
| bool | C_FindObjectsInit (SessionHandle session, Attribute *attribute_template_ptr, Ulong count, ReturnValue *return_value=ThrowException) const |
| bool | C_GenerateKey (SessionHandle session, Mechanism *mechanism_ptr, Attribute *attribute_template_ptr, Ulong count, ObjectHandle *key_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GenerateKeyPair (SessionHandle session, Mechanism *mechanism_ptr, Attribute *public_key_template_ptr, Ulong public_key_attribute_count, Attribute *private_key_template_ptr, Ulong private_key_attribute_count, ObjectHandle *public_key_ptr, ObjectHandle *private_key_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GenerateRandom (SessionHandle session, Byte *random_data_ptr, Ulong random_len, ReturnValue *return_value=ThrowException) const |
| bool | C_GetAttributeValue (SessionHandle session, ObjectHandle object, Attribute *attribute_template_ptr, Ulong count, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_GetAttributeValue (SessionHandle session, ObjectHandle object, std::map< AttributeType, std::vector< uint8_t, TAlloc >> &attribute_values, ReturnValue *return_value=ThrowException) const |
| bool | C_GetFunctionStatus (SessionHandle session, ReturnValue *return_value=ThrowException) const |
| bool | C_GetInfo (Info *info_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetMechanismInfo (SlotId slot_id, MechanismType type, MechanismInfo *info_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetMechanismList (SlotId slot_id, MechanismType *mechanism_list_ptr, Ulong *count_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetMechanismList (SlotId slot_id, std::vector< MechanismType > &mechanisms, ReturnValue *return_value=ThrowException) const |
| bool | C_GetObjectSize (SessionHandle session, ObjectHandle object, Ulong *size_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetOperationState (SessionHandle session, Byte *operation_state_ptr, Ulong *operation_state_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetSessionInfo (SessionHandle session, SessionInfo *info_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetSlotInfo (SlotId slot_id, SlotInfo *info_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetSlotList (Bbool token_present, SlotId *slot_list_ptr, Ulong *count_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_GetSlotList (bool token_present, std::vector< SlotId > &slot_ids, ReturnValue *return_value=ThrowException) const |
| bool | C_GetTokenInfo (SlotId slot_id, TokenInfo *info_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_Initialize (VoidPtr init_args, ReturnValue *return_value=ThrowException) const |
| bool | C_InitPIN (SessionHandle session, Utf8Char *pin_ptr, Ulong pin_len, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_InitPIN (SessionHandle session, const std::vector< uint8_t, TAlloc > &pin, ReturnValue *return_value=ThrowException) const |
| bool | C_InitToken (SlotId slot_id, Utf8Char *so_pin_ptr, Ulong so_pin_len, Utf8Char *label_ptr, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_InitToken (SlotId slot_id, const std::vector< uint8_t, TAlloc > &so_pin, const std::string &label, ReturnValue *return_value=ThrowException) const |
| bool | C_Login (SessionHandle session, UserType user_type, Utf8Char *pin_ptr, Ulong pin_len, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_Login (SessionHandle session, UserType user_type, const std::vector< uint8_t, TAlloc > &pin, ReturnValue *return_value=ThrowException) const |
| bool | C_Logout (SessionHandle session, ReturnValue *return_value=ThrowException) const |
| bool | C_OpenSession (SlotId slot_id, Flags flags, VoidPtr application, Notify notify, SessionHandle *session_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_SeedRandom (SessionHandle session, Byte *seed_ptr, Ulong seed_len, ReturnValue *return_value=ThrowException) const |
| bool | C_SetAttributeValue (SessionHandle session, ObjectHandle object, Attribute *attribute_template_ptr, Ulong count, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_SetAttributeValue (SessionHandle session, ObjectHandle object, std::map< AttributeType, std::vector< uint8_t, TAlloc >> &attribute_values, ReturnValue *return_value=ThrowException) const |
| bool | C_SetOperationState (SessionHandle session, Byte *operation_state_ptr, Ulong operation_state_len, ObjectHandle encryption_key, ObjectHandle authentication_key, ReturnValue *return_value=ThrowException) const |
| bool | C_SetPIN (SessionHandle session, Utf8Char *old_pin_ptr, Ulong old_len, Utf8Char *new_pin_ptr, Ulong new_len, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_SetPIN (SessionHandle session, const std::vector< uint8_t, TAlloc > &old_pin, const std::vector< uint8_t, TAlloc > &new_pin, ReturnValue *return_value=ThrowException) const |
| bool | C_Sign (SessionHandle session, Byte *data_ptr, Ulong data_len, Byte *signature_ptr, Ulong *signature_len_ptr, ReturnValue *return_value=ThrowException) const |
| template<typename TAllocA , typename TAllocB > | |
| bool | C_Sign (SessionHandle session, const std::vector< uint8_t, TAllocA > &data, std::vector< uint8_t, TAllocB > &signature, ReturnValue *return_value=ThrowException) const |
| bool | C_SignEncryptUpdate (SessionHandle session, Byte *part_ptr, Ulong part_len, Byte *encrypted_part_ptr, Ulong *encrypted_part_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_SignFinal (SessionHandle session, Byte *signature_ptr, Ulong *signature_len_ptr, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_SignFinal (SessionHandle session, std::vector< uint8_t, TAlloc > &signature, ReturnValue *return_value=ThrowException) const |
| bool | C_SignInit (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_SignRecover (SessionHandle session, Byte *data_ptr, Ulong data_len, Byte *signature_ptr, Ulong *signature_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_SignRecoverInit (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_SignUpdate (SessionHandle session, Byte *part_ptr, Ulong part_len, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_SignUpdate (SessionHandle session, const std::vector< uint8_t, TAlloc > &part, ReturnValue *return_value=ThrowException) const |
| bool | C_UnwrapKey (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle unwrapping_key, Byte *wrapped_key_ptr, Ulong wrapped_key_len, Attribute *attribute_template_ptr, Ulong attribute_count, ObjectHandle *key_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_Verify (SessionHandle session, Byte *data_ptr, Ulong data_len, Byte *signature_ptr, Ulong signature_len, ReturnValue *return_value=ThrowException) const |
| template<typename TAllocA , typename TAllocB > | |
| bool | C_Verify (SessionHandle session, const std::vector< uint8_t, TAllocA > &data, std::vector< uint8_t, TAllocB > &signature, ReturnValue *return_value=ThrowException) const |
| bool | C_VerifyFinal (SessionHandle session, Byte *signature_ptr, Ulong signature_len, ReturnValue *return_value=ThrowException) const |
| bool | C_VerifyInit (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_VerifyRecover (SessionHandle session, Byte *signature_ptr, Ulong signature_len, Byte *data_ptr, Ulong *data_len_ptr, ReturnValue *return_value=ThrowException) const |
| bool | C_VerifyRecoverInit (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle key, ReturnValue *return_value=ThrowException) const |
| bool | C_VerifyUpdate (SessionHandle session, Byte *part_ptr, Ulong part_len, ReturnValue *return_value=ThrowException) const |
| template<typename TAlloc > | |
| bool | C_VerifyUpdate (SessionHandle session, std::vector< uint8_t, TAlloc > part, ReturnValue *return_value=ThrowException) const |
| bool | C_WaitForSlotEvent (Flags flags, SlotId *slot_ptr, VoidPtr reserved, ReturnValue *return_value=ThrowException) const |
| bool | C_WrapKey (SessionHandle session, Mechanism *mechanism_ptr, ObjectHandle wrapping_key, ObjectHandle key, Byte *wrapped_key_ptr, Ulong *wrapped_key_len_ptr, ReturnValue *return_value=ThrowException) const |
| LowLevel (FunctionListPtr ptr) | |
Static Public Member Functions | |
| static bool | C_GetFunctionList (Dynamically_Loaded_Library &pkcs11_module, FunctionListPtr *function_list_ptr_ptr, ReturnValue *return_value=ThrowException) |
|
explicit |
| ptr | the functon list pointer to use. Can be retrieved via LowLevel::C_GetFunctionList |
| bool Botan::PKCS11::LowLevel::C_CancelFunction | ( | SessionHandle | session, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_CancelFunction is a legacy function; it cancels a function running in parallel.
| session | the session's handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_CloseAllSessions | ( | SlotId | slot_id, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_CloseAllSessions closes all sessions with a token.
| slot_id | the token's slot |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_CloseSession | ( | SessionHandle | session, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_CloseSession closes a session between an application and a token.
| session | the session's handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 246 of file p11.cpp.
Referenced by Botan::PKCS11::Session::~Session().
| bool Botan::PKCS11::LowLevel::C_CopyObject | ( | SessionHandle | session, |
| ObjectHandle | object, | ||
| Attribute * | attribute_template_ptr, | ||
| Ulong | count, | ||
| ObjectHandle * | new_object_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_CopyObject copies an object, creating a new object for the copy.
| session | the session's handle |
| object | the object's handle |
| attribute_template_ptr | template for new object |
| count | attributes in template |
| new_object_ptr | receives handle of copy |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 313 of file p11.cpp.
Referenced by Botan::PKCS11::Object::copy().
| bool Botan::PKCS11::LowLevel::C_CreateObject | ( | SessionHandle | session, |
| Attribute * | attribute_template_ptr, | ||
| Ulong | count, | ||
| ObjectHandle * | object_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_CreateObject creates a new object.
| session | the session's handle |
| attribute_template_ptr | the object's template |
| count | attributes in template |
| object_ptr | gets new object's handle. |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_Decrypt | ( | SessionHandle | session, |
| Byte * | encrypted_data_ptr, | ||
| Ulong | encrypted_data_len, | ||
| Byte * | data_ptr, | ||
| Ulong * | data_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Decrypt decrypts encrypted data in a single part.
| session | session's handle |
| encrypted_data_ptr | ciphertext |
| encrypted_data_len | ciphertext length |
| data_ptr | gets plaintext |
| data_len_ptr | gets p-text size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_Decrypt decrypts encrypted data in a single part.
| session | session's handle |
| encrypted_data | ciphertext |
| decrypted_data | gets plaintext |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1942 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_DecryptDigestUpdate | ( | SessionHandle | session, |
| Byte * | encrypted_part_ptr, | ||
| Ulong | encrypted_part_len, | ||
| Byte * | part_ptr, | ||
| Ulong * | part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DecryptDigestUpdate continues a multiple-part decryption and digesting operation.
| session | session's handle |
| encrypted_part_ptr | ciphertext |
| encrypted_part_len | ciphertext length |
| part_ptr | gets plaintext |
| part_len_ptr | gets plaintext len |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DecryptFinal | ( | SessionHandle | session, |
| Byte * | last_part_ptr, | ||
| Ulong * | last_part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DecryptFinal finishes a multiple-part decryption operation.
| session | the session's handle |
| last_part_ptr | gets plaintext |
| last_part_len_ptr | p-text size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DecryptInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DecryptInit initializes a decryption operation.
| session | the session's handle |
| mechanism_ptr | the decryption mechanism |
| key | handle of decryption key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DecryptUpdate | ( | SessionHandle | session, |
| Byte * | encrypted_part_ptr, | ||
| Ulong | encrypted_part_len, | ||
| Byte * | part_ptr, | ||
| Ulong * | part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DecryptUpdate continues a multiple-part decryption operation.
| session | session's handle |
| encrypted_part_ptr | encrypted data |
| encrypted_part_len | input length |
| part_ptr | gets plaintext |
| part_len_ptr | p-text size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DecryptVerifyUpdate | ( | SessionHandle | session, |
| Byte * | encrypted_part_ptr, | ||
| Ulong | encrypted_part_len, | ||
| Byte * | part_ptr, | ||
| Ulong * | part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DecryptVerifyUpdate continues a multiple-part decryption and verify operation.
| session | session's handle |
| encrypted_part_ptr | ciphertext |
| encrypted_part_len | ciphertext length |
| part_ptr | gets plaintext |
| part_len_ptr | gets p-text length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DeriveKey | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | base_key, | ||
| Attribute * | attribute_template_ptr, | ||
| Ulong | attribute_count, | ||
| ObjectHandle * | key_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DeriveKey derives a key from a base key, creating a new key object.
| session | session's handle |
| mechanism_ptr | key deriv. mech. |
| base_key | base key |
| attribute_template_ptr | new key template |
| attribute_count | template length |
| key_ptr | gets new handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DestroyObject | ( | SessionHandle | session, |
| ObjectHandle | object, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DestroyObject destroys an object.
| session | the session's handle |
| object | the object's handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 324 of file p11.cpp.
Referenced by Botan::PKCS11::Object::destroy().
| bool Botan::PKCS11::LowLevel::C_Digest | ( | SessionHandle | session, |
| Byte * | data_ptr, | ||
| Ulong | data_len, | ||
| Byte * | digest_ptr, | ||
| Ulong * | digest_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Digest digests data in a single part.
| session | the session's handle |
| data_ptr | data to be digested |
| data_len | bytes of data to digest |
| digest_ptr | gets the message digest |
| digest_len_ptr | gets digest length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DigestEncryptUpdate | ( | SessionHandle | session, |
| Byte * | part_ptr, | ||
| Ulong | part_len, | ||
| Byte * | encrypted_part_ptr, | ||
| Ulong * | encrypted_part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DigestEncryptUpdate continues a multiple-part digesting and encryption operation.
| session | session's handle |
| part_ptr | the plaintext data |
| part_len | plaintext length |
| encrypted_part_ptr | gets ciphertext |
| encrypted_part_len_ptr | gets c-text length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DigestFinal | ( | SessionHandle | session, |
| Byte * | digest_ptr, | ||
| Ulong * | digest_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DigestFinal finishes a multiple-part message-digesting operation.
| session | the session's handle |
| digest_ptr | gets the message digest |
| digest_len_ptr | gets uint8_t count of digest |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DigestInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DigestInit initializes a message-digesting operation.
| session | the session's handle |
| mechanism_ptr | the digesting mechanism |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DigestKey | ( | SessionHandle | session, |
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DigestKey continues a multi-part message-digesting operation, by digesting the value of a secret key as part of the data already digested.
| session | the session's handle |
| key | secret key to digest |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_DigestUpdate | ( | SessionHandle | session, |
| Byte * | part_ptr, | ||
| Ulong | part_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_DigestUpdate continues a multiple-part message-digesting operation.
| session | the session's handle |
| part_ptr | data to be digested |
| part_len | bytes of data to be digested |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_Encrypt | ( | SessionHandle | session, |
| Byte * | data_ptr, | ||
| Ulong | data_len, | ||
| Byte * | encrypted_data, | ||
| Ulong * | encrypted_data_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Encrypt encrypts single-part data.
| session | session's handle |
| data_ptr | the plaintext data |
| data_len | size of plaintext data in bytes |
| encrypted_data | gets ciphertext |
| encrypted_data_len_ptr | gets c-text size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_Encrypt encrypts single-part data.
| session | session's handle |
| plaintext_data | the plaintext data |
| encrypted_data | gets ciphertext |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1804 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_EncryptFinal | ( | SessionHandle | session, |
| Byte * | last_encrypted_part_ptr, | ||
| Ulong * | last_encrypted_part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_EncryptFinal finishes a multiple-part encryption operation.
| session | session handle |
| last_encrypted_part_ptr | last c-text |
| last_encrypted_part_len_ptr | gets last size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_EncryptInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_EncryptInit initializes an encryption operation.
| session | the session's handle |
| mechanism_ptr | the encryption mechanism |
| key | handle of encryption key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_EncryptUpdate | ( | SessionHandle | session, |
| Byte * | part_ptr, | ||
| Ulong | part_len, | ||
| Byte * | encrypted_part_ptr, | ||
| Ulong * | encrypted_part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_EncryptUpdate continues a multiple-part encryption operation.
| session | session's handle |
| part_ptr | the plaintext data |
| part_len | plaintext data len |
| encrypted_part_ptr | gets ciphertext |
| encrypted_part_len_ptr | gets c-text size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_Finalize | ( | VoidPtr | reserved, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Finalize indicates that an application is done with the Cryptoki library.
| reserved | reserved. Should be nullptr |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_FindObjects | ( | SessionHandle | session, |
| ObjectHandle * | object_ptr, | ||
| Ulong | max_object_count, | ||
| Ulong * | object_count_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_FindObjects continues a search for token and session objects that match a template, obtaining additional object handles.
| session | session's handle |
| object_ptr | gets obj. handles |
| max_object_count | max handles to get |
| object_count_ptr | actual # returned |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 367 of file p11.cpp.
Referenced by Botan::PKCS11::ObjectFinder::find().
| bool Botan::PKCS11::LowLevel::C_FindObjectsFinal | ( | SessionHandle | session, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_FindObjectsFinal finishes a search for token and session objects.
| session | the session's handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 377 of file p11.cpp.
Referenced by Botan::PKCS11::ObjectFinder::finish(), and Botan::PKCS11::ObjectFinder::~ObjectFinder().
| bool Botan::PKCS11::LowLevel::C_FindObjectsInit | ( | SessionHandle | session, |
| Attribute * | attribute_template_ptr, | ||
| Ulong | count, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_FindObjectsInit initializes a search for token and session objects that match a template.
| session | the session's handle |
| attribute_template_ptr | attribute values to match |
| count | attrs in search template |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 359 of file p11.cpp.
Referenced by Botan::PKCS11::ObjectFinder::ObjectFinder().
| bool Botan::PKCS11::LowLevel::C_GenerateKey | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| Attribute * | attribute_template_ptr, | ||
| Ulong | count, | ||
| ObjectHandle * | key_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GenerateKey generates a secret key, creating a new key object.
| session | the session's handle |
| mechanism_ptr | key generation mech. |
| attribute_template_ptr | template for new key |
| count | # of attrs in template |
| key_ptr | gets handle of new key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GenerateKeyPair | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| Attribute * | public_key_template_ptr, | ||
| Ulong | public_key_attribute_count, | ||
| Attribute * | private_key_template_ptr, | ||
| Ulong | private_key_attribute_count, | ||
| ObjectHandle * | public_key_ptr, | ||
| ObjectHandle * | private_key_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GenerateKeyPair generates a public-key/private-key pair, creating new key objects.
| session | session handle |
| mechanism_ptr | key-gen mech. |
| public_key_template_ptr | template for pub. key |
| public_key_attribute_count | # pub. attrs. |
| private_key_template_ptr | template for priv. key |
| private_key_attribute_count | # priv. attrs. |
| public_key_ptr | gets pub. key handle |
| private_key_ptr | gets priv. key handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GenerateRandom | ( | SessionHandle | session, |
| Byte * | random_data_ptr, | ||
| Ulong | random_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GenerateRandom generates random data.
| session | the session's handle |
| random_data_ptr | receives the random data |
| random_len | # of bytes to generate |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 742 of file p11.cpp.
Referenced by Botan::PKCS11::PKCS11_RNG::randomize().
| bool Botan::PKCS11::LowLevel::C_GetAttributeValue | ( | SessionHandle | session, |
| ObjectHandle | object, | ||
| Attribute * | attribute_template_ptr, | ||
| Ulong | count, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetAttributeValue obtains the value of one or more object attributes.
| session | the session's handle |
| object | the object's handle |
| attribute_template_ptr | specifies attrs; gets vals |
| count | attributes in template |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 339 of file p11.cpp.
Referenced by Botan::PKCS11::Object::get_attribute_value().
|
inline |
C_GetAttributeValue obtains the value of one or more object attributes.
| session | the session's handle |
| object | the object's handle |
| attribute_values | specifies attrs; gets vals |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1584 of file p11.h.
References Botan::PKCS11::ThrowException.
|
static |
C_GetFunctionList returns the function list.
| pkcs11_module | The PKCS#11 module |
| function_list_ptr_ptr | receives pointer to function list |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 102 of file p11.cpp.
References Botan::Dynamically_Loaded_Library::resolve().
Referenced by Botan::PKCS11::Module::reload().
| bool Botan::PKCS11::LowLevel::C_GetFunctionStatus | ( | SessionHandle | session, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetFunctionStatus is a legacy function; it obtains an updated status of a function running in parallel with an application.
| session | the session's handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GetInfo | ( | Info * | info_ptr, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetInfo returns general information about Cryptoki.
| info_ptr | location that receives information |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GetMechanismInfo | ( | SlotId | slot_id, |
| MechanismType | type, | ||
| MechanismInfo * | info_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetMechanismInfo obtains information about a particular mechanism possibly supported by a token.
| slot_id | ID of the token's slot |
| type | type of mechanism |
| info_ptr | receives mechanism info |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 196 of file p11.cpp.
| bool Botan::PKCS11::LowLevel::C_GetMechanismList | ( | SlotId | slot_id, |
| MechanismType * | mechanism_list_ptr, | ||
| Ulong * | count_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetMechanismList obtains a list of mechanism types supported by a token.
| slot_id | ID of token's slot |
| mechanism_list_ptr | gets mech. array |
| count_ptr | gets # of mechs. |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 165 of file p11.cpp.
Referenced by C_GetMechanismList().
| bool Botan::PKCS11::LowLevel::C_GetMechanismList | ( | SlotId | slot_id, |
| std::vector< MechanismType > & | mechanisms, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetMechanismList obtains a list of mechanism types supported by a token.
| slot_id | ID of token's slot |
| mechanisms | receives vector of supported mechanisms |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 174 of file p11.cpp.
References C_GetMechanismList().
| bool Botan::PKCS11::LowLevel::C_GetObjectSize | ( | SessionHandle | session, |
| ObjectHandle | object, | ||
| Ulong * | size_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetObjectSize gets the size of an object in bytes.
| session | the session's handle |
| object | the object's handle |
| size_ptr | receives size of object |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GetOperationState | ( | SessionHandle | session, |
| Byte * | operation_state_ptr, | ||
| Ulong * | operation_state_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetOperationState obtains the state of the cryptographic operation in a session.
| session | session's handle |
| operation_state_ptr | gets state |
| operation_state_len_ptr | gets state length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GetSessionInfo | ( | SessionHandle | session, |
| SessionInfo * | info_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetSessionInfo obtains information about the session.
| session | the session's handle |
| info_ptr | receives session info |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 258 of file p11.cpp.
Referenced by Botan::PKCS11::Session::get_info().
| bool Botan::PKCS11::LowLevel::C_GetSlotInfo | ( | SlotId | slot_id, |
| SlotInfo * | info_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetSlotInfo obtains information about a particular slot in the system.
| slot_id | the ID of the slot |
| info_ptr | receives the slot information |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_GetSlotList | ( | Bbool | token_present, |
| SlotId * | slot_list_ptr, | ||
| Ulong * | count_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetSlotList obtains a list of slots in the system.
| token_present | only slots with tokens |
| slot_list_ptr | receives array of slot IDs |
| count_ptr | receives number of slots |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 114 of file p11.cpp.
Referenced by C_GetSlotList(), and Botan::PKCS11::Slot::get_available_slots().
| bool Botan::PKCS11::LowLevel::C_GetSlotList | ( | bool | token_present, |
| std::vector< SlotId > & | slot_ids, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetSlotList obtains a list of slots in the system.
| token_present | only slots with tokens |
| slot_ids | receives vector of slot IDs |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 122 of file p11.cpp.
References C_GetSlotList().
| bool Botan::PKCS11::LowLevel::C_GetTokenInfo | ( | SlotId | slot_id, |
| TokenInfo * | info_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_GetTokenInfo obtains information about a particular token in the system.
| slot_id | ID of the token's slot |
| info_ptr | receives the token information |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_Initialize | ( | VoidPtr | init_args, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Initialize initializes the Cryptoki library.
| init_args | if this is not nullptr, it gets cast to (C_InitializeArgs) and dereferenced |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_InitPIN | ( | SessionHandle | session, |
| Utf8Char * | pin_ptr, | ||
| Ulong | pin_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_InitPIN initializes the normal user's PIN.
| session | the session's handle |
| pin_ptr | the normal user's PIN |
| pin_len | length in bytes of the PIN |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 214 of file p11.cpp.
Referenced by Botan::PKCS11::Session::init_pin().
|
inline |
C_InitPIN initializes the normal user's PIN.
| session | the session's handle |
| pin | the normal user's PIN |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1203 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_InitToken | ( | SlotId | slot_id, |
| Utf8Char * | so_pin_ptr, | ||
| Ulong | so_pin_len, | ||
| Utf8Char * | label_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_InitToken initializes a token.
| slot_id | ID of the token's slot |
| so_pin_ptr | the SO's initial PIN |
| so_pin_len | length in bytes of the SO_PIN |
| label_ptr | 32-byte token label (blank padded) |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_InitToken initializes a token.
| slot_id | ID of the token's slot |
| so_pin | the SO's initial PIN |
| label | token label (at max 32 bytes long) |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1148 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_Login | ( | SessionHandle | session, |
| UserType | user_type, | ||
| Utf8Char * | pin_ptr, | ||
| Ulong | pin_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Login logs a user into a token.
| session | the session's handle |
| user_type | the user type |
| pin_ptr | the user's PIN |
| pin_len | the length of the PIN |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 285 of file p11.cpp.
Referenced by Botan::PKCS11::Session::login().
|
inline |
C_Login logs a user into a token.
| session | the session's handle |
| user_type | the user type |
| pin | the user or security officer's PIN |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1429 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_Logout | ( | SessionHandle | session, |
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Logout logs a user out from a token.
| session | the session's handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 295 of file p11.cpp.
Referenced by Botan::PKCS11::Session::logoff(), and Botan::PKCS11::Session::~Session().
| bool Botan::PKCS11::LowLevel::C_OpenSession | ( | SlotId | slot_id, |
| Flags | flags, | ||
| VoidPtr | application, | ||
| Notify | notify, | ||
| SessionHandle * | session_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_OpenSession opens a session between an application and a token.
| slot_id | the slot's ID |
| flags | from CK_SESSION_INFO |
| application | passed to callback |
| notify | callback function |
| session_ptr | gets session handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 235 of file p11.cpp.
Referenced by Botan::PKCS11::Session::Session().
| bool Botan::PKCS11::LowLevel::C_SeedRandom | ( | SessionHandle | session, |
| Byte * | seed_ptr, | ||
| Ulong | seed_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SeedRandom mixes additional seed material into the token's random number generator.
| session | the session's handle |
| seed_ptr | the seed material |
| seed_len | length of seed material |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 734 of file p11.cpp.
Referenced by Botan::PKCS11::PKCS11_RNG::add_entropy().
| bool Botan::PKCS11::LowLevel::C_SetAttributeValue | ( | SessionHandle | session, |
| ObjectHandle | object, | ||
| Attribute * | attribute_template_ptr, | ||
| Ulong | count, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SetAttributeValue modifies the value of one or more object attributes.
| session | the session's handle |
| object | the object's handle |
| attribute_template_ptr | specifies attrs and values |
| count | attributes in template |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 349 of file p11.cpp.
Referenced by Botan::PKCS11::Object::set_attribute_value().
|
inline |
C_SetAttributeValue modifies the value of one or more object attributes.
| session | the session's handle |
| object | the object's handle |
| attribute_values | specifies attrs and values |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1664 of file p11.h.
References Botan::PKCS11::ThrowException.
| bool Botan::PKCS11::LowLevel::C_SetOperationState | ( | SessionHandle | session, |
| Byte * | operation_state_ptr, | ||
| Ulong | operation_state_len, | ||
| ObjectHandle | encryption_key, | ||
| ObjectHandle | authentication_key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SetOperationState restores the state of the cryptographic operation in a session.
| session | session's handle |
| operation_state_ptr | holds state |
| operation_state_len | holds state length |
| encryption_key | en/decryption key |
| authentication_key | sign/verify key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_SetPIN | ( | SessionHandle | session, |
| Utf8Char * | old_pin_ptr, | ||
| Ulong | old_len, | ||
| Utf8Char * | new_pin_ptr, | ||
| Ulong | new_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SetPIN modifies the PIN of the user who is logged in.
| session | the session's handle |
| old_pin_ptr | the old PIN |
| old_len | length of the old PIN |
| new_pin_ptr | the new PIN |
| new_len | length of the new PIN |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 222 of file p11.cpp.
Referenced by Botan::PKCS11::Session::set_pin().
|
inline |
C_SetPIN modifies the PIN of the user who is logged in.
| session | the session's handle |
| old_pin | the old PIN |
| new_pin | the new PIN |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 1255 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_Sign | ( | SessionHandle | session, |
| Byte * | data_ptr, | ||
| Ulong | data_len, | ||
| Byte * | signature_ptr, | ||
| Ulong * | signature_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Sign signs (encrypts with private key) data in a single part, where the signature is (will be) an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| data_ptr | the data to sign |
| data_len | count of bytes to sign |
| signature_ptr | gets the signature |
| signature_len_ptr | gets signature length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_Sign signs (encrypts with private key) data in a single part, where the signature is (will be) an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| data | the data to sign |
| signature | gets the signature |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 2185 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_SignEncryptUpdate | ( | SessionHandle | session, |
| Byte * | part_ptr, | ||
| Ulong | part_len, | ||
| Byte * | encrypted_part_ptr, | ||
| Ulong * | encrypted_part_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SignEncryptUpdate continues a multiple-part signing and encryption operation.
| session | session's handle |
| part_ptr | the plaintext data |
| part_len | plaintext length |
| encrypted_part_ptr | gets ciphertext |
| encrypted_part_len_ptr | gets c-text length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_SignFinal | ( | SessionHandle | session, |
| Byte * | signature_ptr, | ||
| Ulong * | signature_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SignFinal finishes a multiple-part signature operation, returning the signature.
| session | the session's handle |
| signature_ptr | gets the signature |
| signature_len_ptr | gets signature length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_SignFinal finishes a multiple-part signature operation, returning the signature.
| session | the session's handle |
| signature | gets the signature |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 2297 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_SignInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SignInit initializes a signature (private key encryption) operation, where the signature is (will be) an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| mechanism_ptr | the signature mechanism |
| key | handle of signature key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_SignRecover | ( | SessionHandle | session, |
| Byte * | data_ptr, | ||
| Ulong | data_len, | ||
| Byte * | signature_ptr, | ||
| Ulong * | signature_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SignRecover signs data in a single operation, where the data can be recovered from the signature.
| session | the session's handle |
| data_ptr | the data to sign |
| data_len | count of bytes to sign |
| signature_ptr | gets the signature |
| signature_len_ptr | gets signature length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_SignRecoverInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SignRecoverInit initializes a signature operation, where the data can be recovered from the signature.
| session | the session's handle |
| mechanism_ptr | the signature mechanism |
| key | handle of the signature key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_SignUpdate | ( | SessionHandle | session, |
| Byte * | part_ptr, | ||
| Ulong | part_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_SignUpdate continues a multiple-part signature operation, where the signature is (will be) an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| part_ptr | the data to sign |
| part_len | count of bytes to sign |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_SignUpdate continues a multiple-part signature operation, where the signature is (will be) an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| part | the data to sign |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 2250 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_UnwrapKey | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | unwrapping_key, | ||
| Byte * | wrapped_key_ptr, | ||
| Ulong | wrapped_key_len, | ||
| Attribute * | attribute_template_ptr, | ||
| Ulong | attribute_count, | ||
| ObjectHandle * | key_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_UnwrapKey unwraps (decrypts) a wrapped key, creating a new key object.
| session | session's handle |
| mechanism_ptr | unwrapping mech. |
| unwrapping_key | unwrapping key |
| wrapped_key_ptr | the wrapped key |
| wrapped_key_len | wrapped key len |
| attribute_template_ptr | new key template |
| attribute_count | template length |
| key_ptr | gets new handle |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_Verify | ( | SessionHandle | session, |
| Byte * | data_ptr, | ||
| Ulong | data_len, | ||
| Byte * | signature_ptr, | ||
| Ulong | signature_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_Verify verifies a signature in a single-part operation, where the signature is an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| data_ptr | signed data |
| data_len | length of signed data |
| signature_ptr | signature |
| signature_len | signature length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_Verify verifies a signature in a single-part operation, where the signature is an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| data | signed data |
| signature | signature |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 2429 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_VerifyFinal | ( | SessionHandle | session, |
| Byte * | signature_ptr, | ||
| Ulong | signature_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_VerifyFinal finishes a multiple-part verification operation, checking the signature.
| session | the session's handle |
| signature_ptr | signature to verify |
| signature_len | signature length |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_VerifyInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_VerifyInit initializes a verification operation, where the signature is an appendix to the data, and plaintext cannot be recovered from the signature (e.g. DSA).
| session | the session's handle |
| mechanism_ptr | the verification mechanism |
| key | verification key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_VerifyRecover | ( | SessionHandle | session, |
| Byte * | signature_ptr, | ||
| Ulong | signature_len, | ||
| Byte * | data_ptr, | ||
| Ulong * | data_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_VerifyRecover verifies a signature in a single-part operation, where the data is recovered from the signature.
| session | the session's handle |
| signature_ptr | signature to verify |
| signature_len | signature length |
| data_ptr | gets signed data |
| data_len_ptr | gets signed data len |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_VerifyRecoverInit | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | key, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_VerifyRecoverInit initializes a signature verification operation, where the data is recovered from the signature.
| session | the session's handle |
| mechanism_ptr | the verification mechanism |
| key | verification key |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
| bool Botan::PKCS11::LowLevel::C_VerifyUpdate | ( | SessionHandle | session, |
| Byte * | part_ptr, | ||
| Ulong | part_len, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_VerifyUpdate continues a multiple-part verification operation, where the signature is an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| part_ptr | signed data |
| part_len | length of signed data |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
|
inline |
C_VerifyUpdate continues a multiple-part verification operation, where the signature is an appendix to the data, and plaintext cannot be recovered from the signature.
| session | the session's handle |
| part | signed data |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 2477 of file p11.h.
| bool Botan::PKCS11::LowLevel::C_WaitForSlotEvent | ( | Flags | flags, |
| SlotId * | slot_ptr, | ||
| VoidPtr | reserved, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_WaitForSlotEvent waits for a slot event (token insertion, removal, etc.) to occur.
| flags | blocking/nonblocking flag |
| slot_ptr | location that receives the slot ID |
| reserved | reserved. Should be NULL_PTR |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
Definition at line 157 of file p11.cpp.
| bool Botan::PKCS11::LowLevel::C_WrapKey | ( | SessionHandle | session, |
| Mechanism * | mechanism_ptr, | ||
| ObjectHandle | wrapping_key, | ||
| ObjectHandle | key, | ||
| Byte * | wrapped_key_ptr, | ||
| Ulong * | wrapped_key_len_ptr, | ||
| ReturnValue * | return_value = ThrowException |
||
| ) | const |
C_WrapKey wraps (i.e., encrypts) a key.
| session | the session's handle |
| mechanism_ptr | the wrapping mechanism |
| wrapping_key | wrapping key |
| key | key to be wrapped |
| wrapped_key_ptr | gets wrapped key |
| wrapped_key_len_ptr | gets wrapped key size |
| return_value | default value (ThrowException): throw exception on error. if a non-NULL pointer is passed: return_value receives the return value of the PKCS#11 function and no exception is thrown. At least the following PKCS#11 return values may be returned:
|
1.8.9.1