| // Copyright (c) 2011 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHAPS_CHAPS_ADAPTOR_H_ |
| #define CHAPS_CHAPS_ADAPTOR_H_ |
| |
| #include <string> |
| #include <vector> |
| |
| #include <base/macros.h> |
| |
| #include "chaps/dbus_adaptors/chaps_interface.h" |
| |
| namespace base { |
| class Lock; |
| } |
| |
| namespace chaps { |
| |
| class ChapsInterface; |
| class TokenManagerInterface; |
| |
| // The ChapsAdaptor class implements the dbus-c++ generated adaptor interface |
| // and redirects IPC calls to a ChapsInterface instance. All dbus-c++ specific |
| // logic, error handling, etc. is implemented here. Specifically, the |
| // ChapsInterface instance need not be aware of dbus-c++ or IPC. This class |
| // exists because we don't want to couple dbus-c++ with the Chaps service |
| // implementation. |
| class ChapsAdaptor : public org::chromium::Chaps_adaptor, |
| public DBus::ObjectAdaptor { |
| public: |
| ChapsAdaptor(base::Lock* lock, |
| ChapsInterface* service, |
| TokenManagerInterface* token_manager); |
| virtual ~ChapsAdaptor(); |
| |
| // These methods are generated by the ChromeOS dbus library. |
| virtual void OpenIsolate(const std::vector<uint8_t>& isolate_credential_in, |
| std::vector<uint8_t>& isolate_credential_out, // NOLINT - refs |
| bool& new_isolate_created, // NOLINT - refs |
| bool& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void CloseIsolate(const std::vector<uint8_t>& isolate_credential, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void LoadToken(const std::vector<uint8_t>& isolate_credential, |
| const std::string& path, |
| const std::vector<uint8_t>& auth_data, |
| const std::string& label, |
| uint64_t& slot_id, // NOLINT - refs |
| bool& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void UnloadToken(const std::vector<uint8_t>& isolate_credential, |
| const std::string& path, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void ChangeTokenAuthData(const std::string& path, |
| const std::vector<uint8_t>& old_auth_data, |
| const std::vector<uint8_t>& new_auth_data, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetTokenPath(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::string& path, // NOLINT - refs |
| bool& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void SetLogLevel(const int32_t& level, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetSlotList(const std::vector<uint8_t>& isolate_credential, |
| const bool& token_present, |
| std::vector<uint64_t>& slot_list, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetSlotInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::vector<uint8_t>& slot_description, // NOLINT - refs |
| std::vector<uint8_t>& manufacturer_id, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint8_t& hardware_version_major, // NOLINT - refs |
| uint8_t& hardware_version_minor, // NOLINT - refs |
| uint8_t& firmware_version_major, // NOLINT - refs |
| uint8_t& firmware_version_minor, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetTokenInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::vector<uint8_t>& label, // NOLINT - refs |
| std::vector<uint8_t>& manufacturer_id, // NOLINT - refs |
| std::vector<uint8_t>& model, // NOLINT - refs |
| std::vector<uint8_t>& serial_number, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint64_t& max_session_count, // NOLINT - refs |
| uint64_t& session_count, // NOLINT - refs |
| uint64_t& max_session_count_rw, // NOLINT - refs |
| uint64_t& session_count_rw, // NOLINT - refs |
| uint64_t& max_pin_len, // NOLINT - refs |
| uint64_t& min_pin_len, // NOLINT - refs |
| uint64_t& total_public_memory, // NOLINT - refs |
| uint64_t& free_public_memory, // NOLINT - refs |
| uint64_t& total_private_memory, // NOLINT - refs |
| uint64_t& free_private_memory, // NOLINT - refs |
| uint8_t& hardware_version_major, // NOLINT - refs |
| uint8_t& hardware_version_minor, // NOLINT - refs |
| uint8_t& firmware_version_major, // NOLINT - refs |
| uint8_t& firmware_version_minor, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetMechanismList(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::vector<uint64_t>& mechanism_list, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetMechanismInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| const uint64_t& mechanism_type, |
| uint64_t& min_key_size, // NOLINT - refs |
| uint64_t& max_key_size, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t InitToken(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| const bool& use_null_pin, |
| const std::string& optional_so_pin, |
| const std::vector<uint8_t>& new_token_label, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t InitPIN(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const bool& use_null_pin, |
| const std::string& optional_user_pin, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SetPIN(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const bool& use_null_old_pin, |
| const std::string& optional_old_pin, |
| const bool& use_null_new_pin, |
| const std::string& optional_new_pin, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void OpenSession(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, const uint64_t& flags, |
| uint64_t& session_id, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t CloseSession(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t CloseAllSessions( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetSessionInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| uint64_t& slot_id, // NOLINT - refs |
| uint64_t& state, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint64_t& device_error, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetOperationState(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| std::vector<uint8_t>& operation_state, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SetOperationState( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& operation_state, |
| const uint64_t& encryption_key_handle, |
| const uint64_t& authentication_key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t Login(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& user_type, |
| const bool& use_null_pin, |
| const std::string& optional_pin, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t Logout(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void CreateObject( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& new_object_handle, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void CopyObject( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& new_object_handle, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t DestroyObject(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetObjectSize(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| uint64_t& object_size, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GetAttributeValue(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| const std::vector<uint8_t>& attributes_in, |
| std::vector<uint8_t>& attributes_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SetAttributeValue( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| const std::vector<uint8_t>& attributes, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t FindObjectsInit( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& attributes, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void FindObjects(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_object_count, |
| std::vector<uint64_t>& object_list, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t FindObjectsFinal( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t EncryptInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void Encrypt(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void EncryptUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void EncryptFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t DecryptInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void Decrypt(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DecryptUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DecryptFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t DigestInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void Digest(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& digest, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t DigestUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t DigestKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DigestFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& digest, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SignInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void Sign(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& signature, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SignUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_part, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void SignFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& signature, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SignRecoverInit( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void SignRecover(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& signature, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t VerifyInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t Verify(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data, |
| const std::vector<uint8_t>& signature, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t VerifyUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_part, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t VerifyFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& signature, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t VerifyRecoverInit( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void VerifyRecover( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& signature, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DigestEncryptUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DecryptDigestUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void SignEncryptUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DecryptVerifyUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GenerateKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& key_handle, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GenerateKeyPair( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const std::vector<uint8_t>& public_attributes, |
| const std::vector<uint8_t>& private_attributes, |
| uint64_t& public_key_handle, // NOLINT - refs |
| uint64_t& private_key_handle, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void WrapKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& wrapping_key_handle, |
| const uint64_t& key_handle, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& wrapped_key, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void UnwrapKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& wrapping_key_handle, |
| const std::vector<uint8_t>& wrapped_key, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& key_handle, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void DeriveKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& base_key_handle, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& key_handle, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| virtual uint32_t SeedRandom(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& seed, |
| ::DBus::Error& error); // NOLINT - refs |
| virtual void GenerateRandom(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& num_bytes, |
| std::vector<uint8_t>& random_data, // NOLINT - refs |
| uint32_t& result, // NOLINT - refs |
| ::DBus::Error& error); // NOLINT - refs |
| |
| // These methods are generated by the Linux dbus library. |
| virtual void OpenIsolate(const std::vector<uint8_t>& isolate_credential_in, |
| std::vector<uint8_t>& isolate_credential_out, // NOLINT - refs |
| bool& new_isolate_created, // NOLINT - refs |
| bool& result); // NOLINT - refs |
| virtual void CloseIsolate(const std::vector<uint8_t>& isolate_credential); |
| virtual void LoadToken(const std::vector<uint8_t>& isolate_credential, |
| const std::string& path, |
| const std::vector<uint8_t>& auth_data, |
| const std::string& label, |
| uint64_t& slot_id, // NOLINT - refs |
| bool& result); // NOLINT - refs |
| virtual void UnloadToken(const std::vector<uint8_t>& isolate_credential, |
| const std::string& path); |
| virtual void ChangeTokenAuthData(const std::string& path, |
| const std::vector<uint8_t>& old_auth_data, |
| const std::vector<uint8_t>& new_auth_data); |
| virtual void GetTokenPath(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::string& path, // NOLINT - refs |
| bool& result); // NOLINT - refs |
| virtual void SetLogLevel(const int32_t& level); |
| virtual void GetSlotList(const std::vector<uint8_t>& isolate_credential, |
| const bool& token_present, |
| std::vector<uint64_t>& slot_list, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GetSlotInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::vector<uint8_t>& slot_description, // NOLINT - refs |
| std::vector<uint8_t>& manufacturer_id, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint8_t& hardware_version_major, // NOLINT - refs |
| uint8_t& hardware_version_minor, // NOLINT - refs |
| uint8_t& firmware_version_major, // NOLINT - refs |
| uint8_t& firmware_version_minor, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GetTokenInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::vector<uint8_t>& label, // NOLINT - refs |
| std::vector<uint8_t>& manufacturer_id, // NOLINT - refs |
| std::vector<uint8_t>& model, // NOLINT - refs |
| std::vector<uint8_t>& serial_number, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint64_t& max_session_count, // NOLINT - refs |
| uint64_t& session_count, // NOLINT - refs |
| uint64_t& max_session_count_rw, // NOLINT - refs |
| uint64_t& session_count_rw, // NOLINT - refs |
| uint64_t& max_pin_len, // NOLINT - refs |
| uint64_t& min_pin_len, // NOLINT - refs |
| uint64_t& total_public_memory, // NOLINT - refs |
| uint64_t& free_public_memory, // NOLINT - refs |
| uint64_t& total_private_memory, // NOLINT - refs |
| uint64_t& free_private_memory, // NOLINT - refs |
| uint8_t& hardware_version_major, // NOLINT - refs |
| uint8_t& hardware_version_minor, // NOLINT - refs |
| uint8_t& firmware_version_major, // NOLINT - refs |
| uint8_t& firmware_version_minor, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GetMechanismList(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| std::vector<uint64_t>& mechanism_list, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GetMechanismInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| const uint64_t& mechanism_type, |
| uint64_t& min_key_size, // NOLINT - refs |
| uint64_t& max_key_size, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t InitToken(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, |
| const bool& use_null_pin, |
| const std::string& optional_so_pin, |
| const std::vector<uint8_t>& new_token_label); |
| virtual uint32_t InitPIN(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const bool& use_null_pin, |
| const std::string& optional_user_pin); |
| virtual uint32_t SetPIN(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const bool& use_null_old_pin, |
| const std::string& optional_old_pin, |
| const bool& use_null_new_pin, |
| const std::string& optional_new_pin); |
| virtual void OpenSession(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id, const uint64_t& flags, |
| uint64_t& session_id, uint32_t& result); // NOLINT - refs |
| virtual uint32_t CloseSession(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id); |
| virtual uint32_t CloseAllSessions( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& slot_id); |
| virtual void GetSessionInfo(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| uint64_t& slot_id, // NOLINT - refs |
| uint64_t& state, // NOLINT - refs |
| uint64_t& flags, // NOLINT - refs |
| uint64_t& device_error, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GetOperationState(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| std::vector<uint8_t>& operation_state, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t SetOperationState( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& operation_state, |
| const uint64_t& encryption_key_handle, |
| const uint64_t& authentication_key_handle); |
| virtual uint32_t Login(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& user_type, |
| const bool& use_null_pin, |
| const std::string& optional_pin); |
| virtual uint32_t Logout(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id); |
| virtual void CreateObject( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& new_object_handle, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void CopyObject( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& new_object_handle, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t DestroyObject(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle); |
| virtual void GetObjectSize(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| uint64_t& object_size, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GetAttributeValue(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| const std::vector<uint8_t>& attributes_in, |
| std::vector<uint8_t>& attributes_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t SetAttributeValue( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& object_handle, |
| const std::vector<uint8_t>& attributes); |
| virtual uint32_t FindObjectsInit( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& attributes); |
| virtual void FindObjects(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_object_count, |
| std::vector<uint64_t>& object_list, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t FindObjectsFinal( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id); |
| virtual uint32_t EncryptInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle); |
| virtual void Encrypt(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void EncryptUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void EncryptFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t DecryptInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle); |
| virtual void Decrypt(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void DecryptUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void DecryptFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t DigestInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter); |
| virtual void Digest(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& digest, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t DigestUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in); |
| virtual uint32_t DigestKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& key_handle); |
| virtual void DigestFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& digest, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t SignInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle); |
| virtual void Sign(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& signature, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t SignUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_part); |
| virtual void SignFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& signature, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t SignRecoverInit( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle); |
| virtual void SignRecover(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& signature, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t VerifyInit(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle); |
| virtual uint32_t Verify(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data, |
| const std::vector<uint8_t>& signature); |
| virtual uint32_t VerifyUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_part); |
| virtual uint32_t VerifyFinal(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& signature); |
| virtual uint32_t VerifyRecoverInit( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& key_handle); |
| virtual void VerifyRecover(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& signature, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void DigestEncryptUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void DecryptDigestUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void SignEncryptUpdate(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void DecryptVerifyUpdate( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& data_in, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& data_out, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GenerateKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& key_handle, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void GenerateKeyPair( |
| const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const std::vector<uint8_t>& public_attributes, |
| const std::vector<uint8_t>& private_attributes, |
| uint64_t& public_key_handle, // NOLINT - refs |
| uint64_t& private_key_handle, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void WrapKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& wrapping_key_handle, |
| const uint64_t& key_handle, |
| const uint64_t& max_out_length, |
| uint64_t& actual_out_length, // NOLINT - refs |
| std::vector<uint8_t>& wrapped_key, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void UnwrapKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& wrapping_key_handle, |
| const std::vector<uint8_t>& wrapped_key, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& key_handle, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual void DeriveKey(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& mechanism_type, |
| const std::vector<uint8_t>& mechanism_parameter, |
| const uint64_t& base_key_handle, |
| const std::vector<uint8_t>& attributes, |
| uint64_t& key_handle, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| virtual uint32_t SeedRandom(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const std::vector<uint8_t>& seed); |
| virtual void GenerateRandom(const std::vector<uint8_t>& isolate_credential, |
| const uint64_t& session_id, |
| const uint64_t& num_bytes, |
| std::vector<uint8_t>& random_data, // NOLINT - refs |
| uint32_t& result); // NOLINT - refs |
| |
| private: |
| base::Lock* lock_; |
| ChapsInterface* service_; |
| TokenManagerInterface* token_manager_; |
| |
| DISALLOW_COPY_AND_ASSIGN(ChapsAdaptor); |
| }; |
| |
| } // namespace chaps |
| #endif // CHAPS_CHAPS_ADAPTOR_H_ |