Electroneum
hw::device Class Referenceabstract

#include <device.hpp>

Inheritance diagram for hw::device:
Collaboration diagram for hw::device:

Public Types

enum  device_mode { NONE, TRANSACTION_CREATE_REAL, TRANSACTION_CREATE_FAKE, TRANSACTION_PARSE }
 
enum  device_type { SOFTWARE = 0, LEDGER = 1, TREZOR = 2 }
 
enum  device_protocol_t { PROTOCOL_DEFAULT, PROTOCOL_PROXY, PROTOCOL_COLD }
 

Public Member Functions

 device ()
 
 device (const device &hwdev)
 
virtual ~device ()
 
virtual operator bool () const =0
 
virtual bool set_name (const std::string &name)=0
 
virtual const std::string get_name () const =0
 
virtual bool init (void)=0
 
virtual bool release ()=0
 
virtual bool connect (void)=0
 
virtual bool disconnect (void)=0
 
virtual bool set_mode (device_mode mode)
 
virtual device_mode get_mode () const
 
virtual device_type get_type () const =0
 
virtual device_protocol_t device_protocol () const
 
virtual void set_callback (i_device_callback *callback)
 
virtual void set_derivation_path (const std::string &derivation_path)
 
virtual void set_pin (const epee::wipeable_string &pin)
 
virtual void set_passphrase (const epee::wipeable_string &passphrase)
 
virtual void lock (void)=0
 
virtual void unlock (void)=0
 
virtual bool try_lock (void)=0
 
virtual bool get_public_address (cryptonote::account_public_address &pubkey)=0
 
virtual bool get_secret_keys (crypto::secret_key &viewkey, crypto::secret_key &spendkey)=0
 
virtual bool generate_chacha_key (const cryptonote::account_keys &keys, crypto::chacha_key &key, uint64_t kdf_rounds)=0
 
virtual bool derive_subaddress_public_key (const crypto::public_key &pub, const crypto::key_derivation &derivation, const std::size_t output_index, crypto::public_key &derived_pub)=0
 
virtual crypto::public_key get_subaddress_spend_public_key (const cryptonote::account_keys &keys, const cryptonote::subaddress_index &index)=0
 
virtual std::vector< crypto::public_keyget_subaddress_spend_public_keys (const cryptonote::account_keys &keys, uint32_t account, uint32_t begin, uint32_t end)=0
 
virtual cryptonote::account_public_address get_subaddress (const cryptonote::account_keys &keys, const cryptonote::subaddress_index &index)=0
 
virtual crypto::secret_key get_subaddress_private_spendkey (const cryptonote::account_keys &keys, const cryptonote::subaddress_index &subaddr_index)=0
 
virtual crypto::secret_key get_subaddress_private_viewkey (const crypto::secret_key &main_wallet_sec_view, crypto::secret_key &subaddress_sec_spend)=0
 
virtual crypto::secret_key get_subaddress_secret_key (const crypto::secret_key &sec, const cryptonote::subaddress_index &index)=0
 
virtual bool verify_keys (const crypto::secret_key &secret_key, const crypto::public_key &public_key)=0
 
virtual bool scalarmultKey (rct::key &aP, const rct::key &P, const rct::key &a)=0
 
virtual bool scalarmultBase (rct::key &aG, const rct::key &a)=0
 
virtual bool sc_secret_add (crypto::secret_key &r, const crypto::secret_key &a, const crypto::secret_key &b)=0
 
virtual crypto::secret_key generate_keys (crypto::public_key &pub, crypto::secret_key &sec, const crypto::secret_key &recovery_key=crypto::secret_key(), bool recover=false)=0
 
virtual bool generate_key_derivation (const crypto::public_key &pub, const crypto::secret_key &sec, crypto::key_derivation &derivation)=0
 
virtual bool conceal_derivation (crypto::key_derivation &derivation, const crypto::public_key &tx_pub_key, const std::vector< crypto::public_key > &additional_tx_pub_keys, const crypto::key_derivation &main_derivation, const std::vector< crypto::key_derivation > &additional_derivations)=0
 
virtual bool derivation_to_scalar (const crypto::key_derivation &derivation, const size_t output_index, crypto::ec_scalar &res)=0
 
virtual bool derive_secret_key (const crypto::key_derivation &derivation, const std::size_t output_index, const crypto::secret_key &sec, crypto::secret_key &derived_sec)=0
 
virtual bool derive_public_key (const crypto::key_derivation &derivation, const std::size_t output_index, const crypto::public_key &pub, crypto::public_key &derived_pub)=0
 
virtual bool secret_key_to_public_key (const crypto::secret_key &sec, crypto::public_key &pub)=0
 
virtual bool generate_key_image (const crypto::public_key &pub, const crypto::secret_key &sec, crypto::key_image &image)=0
 
rct::key scalarmultKey (const rct::key &P, const rct::key &a)
 
rct::key scalarmultBase (const rct::key &a)
 
virtual void generate_tx_proof (const crypto::hash &prefix_hash, const crypto::public_key &R, const crypto::public_key &A, const boost::optional< crypto::public_key > &B, const crypto::public_key &D, const crypto::secret_key &r, crypto::signature &sig)=0
 
virtual bool open_tx (crypto::secret_key &tx_key)=0
 
virtual bool encrypt_payment_id (crypto::hash8 &payment_id, const crypto::public_key &public_key, const crypto::secret_key &secret_key)=0
 
bool decrypt_payment_id (crypto::hash8 &payment_id, const crypto::public_key &public_key, const crypto::secret_key &secret_key)
 
virtual rct::key genCommitmentMask (const rct::key &amount_key)=0
 
virtual bool ecdhEncode (rct::ecdhTuple &unmasked, const rct::key &sharedSec, bool short_amount)=0
 
virtual bool ecdhDecode (rct::ecdhTuple &masked, const rct::key &sharedSec, bool short_amount)=0
 
virtual bool generate_output_ephemeral_keys (const size_t tx_version, const cryptonote::account_keys &sender_account_keys, const crypto::public_key &txkey_pub, const crypto::secret_key &tx_key, const cryptonote::tx_destination_entry &dst_entr, const boost::optional< cryptonote::account_public_address > &change_addr, const size_t output_index, const bool &need_additional_txkeys, const std::vector< crypto::secret_key > &additional_tx_keys, std::vector< crypto::public_key > &additional_tx_public_keys, std::vector< rct::key > &amount_keys, crypto::public_key &out_eph_public_key)=0
 
virtual bool mlsag_prehash (const std::string &blob, size_t inputs_size, size_t outputs_size, const rct::keyV &hashes, const rct::ctkeyV &outPk, rct::key &prehash)=0
 
virtual bool mlsag_prepare (const rct::key &H, const rct::key &xx, rct::key &a, rct::key &aG, rct::key &aHP, rct::key &rvII)=0
 
virtual bool mlsag_prepare (rct::key &a, rct::key &aG)=0
 
virtual bool mlsag_hash (const rct::keyV &long_message, rct::key &c)=0
 
virtual bool mlsag_sign (const rct::key &c, const rct::keyV &xx, const rct::keyV &alpha, const size_t rows, const size_t dsRows, rct::keyV &ss)=0
 
virtual bool close_tx (void)=0
 
virtual bool get_transaction_prefix_hash (const cryptonote::transaction_prefix &tx, crypto::hash &tx_prefix_hash)=0
 
virtual bool generate_input_signature (const crypto::hash &prefix_hash, const uint32_t input_index, const crypto::secret_key sec_view, const crypto::secret_key sec_spend, crypto::signature &signature)=0
 
virtual bool generate_ring_signature (const crypto::hash &prefix_hash, const crypto::key_image &image, const std::vector< const crypto::public_key *> &pubs, const crypto::secret_key &sec, std::size_t sec_index, crypto::signature *sig)=0
 
virtual bool hash_to_scalar (boost::shared_ptr< crypto::rs_comm > buf, size_t length, crypto::ec_scalar &res)=0
 
virtual bool has_ki_cold_sync (void) const
 
virtual bool has_tx_cold_sign (void) const
 
virtual bool has_ki_live_refresh (void) const
 
virtual bool compute_key_image (const cryptonote::account_keys &ack, const crypto::public_key &out_key, const crypto::key_derivation &recv_derivation, size_t real_output_index, const cryptonote::subaddress_index &received_index, cryptonote::keypair &in_ephemeral, crypto::key_image &ki)
 
virtual void computing_key_images (bool started)
 
virtual void set_network_type (cryptonote::network_type network_type)
 

Protected Attributes

std::string name
 
device_mode mode
 

Detailed Description

Definition at line 87 of file device.hpp.

Member Enumeration Documentation

◆ device_mode

Enumerator
NONE 
TRANSACTION_CREATE_REAL 
TRANSACTION_CREATE_FAKE 
TRANSACTION_PARSE 

Definition at line 98 of file device.hpp.

◆ device_protocol_t

Enumerator
PROTOCOL_DEFAULT 
PROTOCOL_PROXY 
PROTOCOL_COLD 

Definition at line 112 of file device.hpp.

112  {
114  PROTOCOL_PROXY, // Originally defined by Ledger
115  PROTOCOL_COLD, // Originally defined by Trezor
116  };

◆ device_type

Enumerator
SOFTWARE 
LEDGER 
TREZOR 

Definition at line 104 of file device.hpp.

105  {
106  SOFTWARE = 0,
107  LEDGER = 1,
108  TREZOR = 2
109  };

Constructor & Destructor Documentation

◆ device() [1/2]

hw::device::device ( )
inline

Definition at line 93 of file device.hpp.

93 : mode(NONE) {}
device_mode mode
Definition: device.hpp:251

◆ device() [2/2]

hw::device::device ( const device hwdev)
inline

Definition at line 94 of file device.hpp.

94 {}

◆ ~device()

virtual hw::device::~device ( )
inlinevirtual

Definition at line 95 of file device.hpp.

95 {}

Member Function Documentation

◆ close_tx()

virtual bool hw::device::close_tx ( void  )
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ compute_key_image()

virtual bool hw::device::compute_key_image ( const cryptonote::account_keys ack,
const crypto::public_key out_key,
const crypto::key_derivation recv_derivation,
size_t  real_output_index,
const cryptonote::subaddress_index received_index,
cryptonote::keypair in_ephemeral,
crypto::key_image ki 
)
inlinevirtual

Definition at line 246 of file device.hpp.

246 { return false; }
Here is the caller graph for this function:

◆ computing_key_images()

virtual void hw::device::computing_key_images ( bool  started)
inlinevirtual

Definition at line 247 of file device.hpp.

247 {};

◆ conceal_derivation()

virtual bool hw::device::conceal_derivation ( crypto::key_derivation derivation,
const crypto::public_key tx_pub_key,
const std::vector< crypto::public_key > &  additional_tx_pub_keys,
const crypto::key_derivation main_derivation,
const std::vector< crypto::key_derivation > &  additional_derivations 
)
pure virtual

Implemented in hw::core::device_default.

◆ connect()

virtual bool hw::device::connect ( void  )
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ decrypt_payment_id()

bool hw::device::decrypt_payment_id ( crypto::hash8 payment_id,
const crypto::public_key public_key,
const crypto::secret_key secret_key 
)
inline

Definition at line 210 of file device.hpp.

211  {
212  // Encryption and decryption are the same operation (xor with a key)
213  return encrypt_payment_id(payment_id, public_key, secret_key);
214  }
virtual bool encrypt_payment_id(crypto::hash8 &payment_id, const crypto::public_key &public_key, const crypto::secret_key &secret_key)=0
epee::mlocked< tools::scrubbed< ec_scalar > > secret_key
Definition: crypto.h:82
POD_CLASS public_key
Definition: crypto.h:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ derivation_to_scalar()

virtual bool hw::device::derivation_to_scalar ( const crypto::key_derivation derivation,
const size_t  output_index,
crypto::ec_scalar res 
)
pure virtual

Implemented in hw::core::device_default.

◆ derive_public_key()

virtual bool hw::device::derive_public_key ( const crypto::key_derivation derivation,
const std::size_t  output_index,
const crypto::public_key pub,
crypto::public_key derived_pub 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ derive_secret_key()

virtual bool hw::device::derive_secret_key ( const crypto::key_derivation derivation,
const std::size_t  output_index,
const crypto::secret_key sec,
crypto::secret_key derived_sec 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ derive_subaddress_public_key()

virtual bool hw::device::derive_subaddress_public_key ( const crypto::public_key pub,
const crypto::key_derivation derivation,
const std::size_t  output_index,
crypto::public_key derived_pub 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ device_protocol()

virtual device_protocol_t hw::device::device_protocol ( ) const
inlinevirtual

Definition at line 135 of file device.hpp.

Here is the caller graph for this function:

◆ disconnect()

virtual bool hw::device::disconnect ( void  )
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ ecdhDecode()

virtual bool hw::device::ecdhDecode ( rct::ecdhTuple masked,
const rct::key sharedSec,
bool  short_amount 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ ecdhEncode()

virtual bool hw::device::ecdhEncode ( rct::ecdhTuple unmasked,
const rct::key sharedSec,
bool  short_amount 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ encrypt_payment_id()

virtual bool hw::device::encrypt_payment_id ( crypto::hash8 payment_id,
const crypto::public_key public_key,
const crypto::secret_key secret_key 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ genCommitmentMask()

virtual rct::key hw::device::genCommitmentMask ( const rct::key amount_key)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ generate_chacha_key()

virtual bool hw::device::generate_chacha_key ( const cryptonote::account_keys keys,
crypto::chacha_key &  key,
uint64_t  kdf_rounds 
)
pure virtual

Implemented in hw::core::device_default.

◆ generate_input_signature()

virtual bool hw::device::generate_input_signature ( const crypto::hash prefix_hash,
const uint32_t  input_index,
const crypto::secret_key  sec_view,
const crypto::secret_key  sec_spend,
crypto::signature signature 
)
pure virtual

Implemented in hw::core::device_default.

◆ generate_key_derivation()

virtual bool hw::device::generate_key_derivation ( const crypto::public_key pub,
const crypto::secret_key sec,
crypto::key_derivation derivation 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ generate_key_image()

virtual bool hw::device::generate_key_image ( const crypto::public_key pub,
const crypto::secret_key sec,
crypto::key_image image 
)
pure virtual

Implemented in hw::core::device_default.

◆ generate_keys()

virtual crypto::secret_key hw::device::generate_keys ( crypto::public_key pub,
crypto::secret_key sec,
const crypto::secret_key recovery_key = crypto::secret_key(),
bool  recover = false 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ generate_output_ephemeral_keys()

virtual bool hw::device::generate_output_ephemeral_keys ( const size_t  tx_version,
const cryptonote::account_keys sender_account_keys,
const crypto::public_key txkey_pub,
const crypto::secret_key tx_key,
const cryptonote::tx_destination_entry dst_entr,
const boost::optional< cryptonote::account_public_address > &  change_addr,
const size_t  output_index,
const bool need_additional_txkeys,
const std::vector< crypto::secret_key > &  additional_tx_keys,
std::vector< crypto::public_key > &  additional_tx_public_keys,
std::vector< rct::key > &  amount_keys,
crypto::public_key out_eph_public_key 
)
pure virtual

Implemented in hw::core::device_default.

◆ generate_ring_signature()

virtual bool hw::device::generate_ring_signature ( const crypto::hash prefix_hash,
const crypto::key_image image,
const std::vector< const crypto::public_key *> &  pubs,
const crypto::secret_key sec,
std::size_t  sec_index,
crypto::signature sig 
)
pure virtual

Implemented in hw::core::device_default.

◆ generate_tx_proof()

virtual void hw::device::generate_tx_proof ( const crypto::hash prefix_hash,
const crypto::public_key R,
const crypto::public_key A,
const boost::optional< crypto::public_key > &  B,
const crypto::public_key D,
const crypto::secret_key r,
crypto::signature sig 
)
pure virtual

Implemented in hw::core::device_default.

◆ get_mode()

virtual device_mode hw::device::get_mode ( ) const
inlinevirtual

Definition at line 131 of file device.hpp.

131 { return mode; }
device_mode mode
Definition: device.hpp:251
Here is the caller graph for this function:

◆ get_name()

virtual const std::string hw::device::get_name ( ) const
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_public_address()

virtual bool hw::device::get_public_address ( cryptonote::account_public_address pubkey)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_secret_keys()

virtual bool hw::device::get_secret_keys ( crypto::secret_key viewkey,
crypto::secret_key spendkey 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_subaddress()

virtual cryptonote::account_public_address hw::device::get_subaddress ( const cryptonote::account_keys keys,
const cryptonote::subaddress_index index 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_subaddress_private_spendkey()

virtual crypto::secret_key hw::device::get_subaddress_private_spendkey ( const cryptonote::account_keys keys,
const cryptonote::subaddress_index subaddr_index 
)
pure virtual

Implemented in hw::core::device_default.

◆ get_subaddress_private_viewkey()

virtual crypto::secret_key hw::device::get_subaddress_private_viewkey ( const crypto::secret_key main_wallet_sec_view,
crypto::secret_key subaddress_sec_spend 
)
pure virtual

Implemented in hw::core::device_default.

◆ get_subaddress_secret_key()

virtual crypto::secret_key hw::device::get_subaddress_secret_key ( const crypto::secret_key sec,
const cryptonote::subaddress_index index 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_subaddress_spend_public_key()

virtual crypto::public_key hw::device::get_subaddress_spend_public_key ( const cryptonote::account_keys keys,
const cryptonote::subaddress_index index 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_subaddress_spend_public_keys()

virtual std::vector<crypto::public_key> hw::device::get_subaddress_spend_public_keys ( const cryptonote::account_keys keys,
uint32_t  account,
uint32_t  begin,
uint32_t  end 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ get_transaction_prefix_hash()

virtual bool hw::device::get_transaction_prefix_hash ( const cryptonote::transaction_prefix tx,
crypto::hash tx_prefix_hash 
)
pure virtual

Implemented in hw::core::device_default.

◆ get_type()

virtual device_type hw::device::get_type ( ) const
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ has_ki_cold_sync()

virtual bool hw::device::has_ki_cold_sync ( void  ) const
inlinevirtual

Definition at line 243 of file device.hpp.

243 { return false; }
Here is the caller graph for this function:

◆ has_ki_live_refresh()

virtual bool hw::device::has_ki_live_refresh ( void  ) const
inlinevirtual

Definition at line 245 of file device.hpp.

245 { return true; }

◆ has_tx_cold_sign()

virtual bool hw::device::has_tx_cold_sign ( void  ) const
inlinevirtual

Definition at line 244 of file device.hpp.

244 { return false; }
Here is the caller graph for this function:

◆ hash_to_scalar()

virtual bool hw::device::hash_to_scalar ( boost::shared_ptr< crypto::rs_comm buf,
size_t  length,
crypto::ec_scalar res 
)
pure virtual

Implemented in hw::core::device_default.

◆ init()

virtual bool hw::device::init ( void  )
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ lock()

virtual void hw::device::lock ( void  )
pure virtual

Implemented in hw::core::device_default.

◆ mlsag_hash()

virtual bool hw::device::mlsag_hash ( const rct::keyV long_message,
rct::key c 
)
pure virtual

Implemented in hw::core::device_default.

◆ mlsag_prehash()

virtual bool hw::device::mlsag_prehash ( const std::string &  blob,
size_t  inputs_size,
size_t  outputs_size,
const rct::keyV hashes,
const rct::ctkeyV outPk,
rct::key prehash 
)
pure virtual

Implemented in hw::core::device_default.

◆ mlsag_prepare() [1/2]

virtual bool hw::device::mlsag_prepare ( const rct::key H,
const rct::key xx,
rct::key a,
rct::key aG,
rct::key aHP,
rct::key rvII 
)
pure virtual

Implemented in hw::core::device_default.

◆ mlsag_prepare() [2/2]

virtual bool hw::device::mlsag_prepare ( rct::key a,
rct::key aG 
)
pure virtual

Implemented in hw::core::device_default.

◆ mlsag_sign()

virtual bool hw::device::mlsag_sign ( const rct::key c,
const rct::keyV xx,
const rct::keyV alpha,
const size_t  rows,
const size_t  dsRows,
rct::keyV ss 
)
pure virtual

Implemented in hw::core::device_default.

◆ open_tx()

virtual bool hw::device::open_tx ( crypto::secret_key tx_key)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ operator bool()

virtual hw::device::operator bool ( ) const
explicitpure virtual

Implemented in hw::core::device_default.

◆ release()

virtual bool hw::device::release ( )
pure virtual

Implemented in hw::core::device_default.

◆ sc_secret_add()

virtual bool hw::device::sc_secret_add ( crypto::secret_key r,
const crypto::secret_key a,
const crypto::secret_key b 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ scalarmultBase() [1/2]

virtual bool hw::device::scalarmultBase ( rct::key aG,
const rct::key a 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ scalarmultBase() [2/2]

rct::key hw::device::scalarmultBase ( const rct::key a)
inline

Definition at line 192 of file device.hpp.

193  {
194  rct::key aG;
195  scalarmultBase(aG, a);
196  return aG;
197  }
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
Definition: pointer.h:1124
virtual bool scalarmultBase(rct::key &aG, const rct::key &a)=0
Here is the call graph for this function:

◆ scalarmultKey() [1/2]

virtual bool hw::device::scalarmultKey ( rct::key aP,
const rct::key P,
const rct::key a 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ scalarmultKey() [2/2]

rct::key hw::device::scalarmultKey ( const rct::key P,
const rct::key a 
)
inline

Definition at line 185 of file device.hpp.

186  {
187  rct::key aP;
188  scalarmultKey(aP, P, a);
189  return aP;
190  }
virtual bool scalarmultKey(rct::key &aP, const rct::key &P, const rct::key &a)=0
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
Definition: pointer.h:1124
Here is the call graph for this function:

◆ secret_key_to_public_key()

virtual bool hw::device::secret_key_to_public_key ( const crypto::secret_key sec,
crypto::public_key pub 
)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ set_callback()

virtual void hw::device::set_callback ( i_device_callback callback)
inlinevirtual

Definition at line 136 of file device.hpp.

136 {};
Here is the caller graph for this function:

◆ set_derivation_path()

virtual void hw::device::set_derivation_path ( const std::string &  derivation_path)
inlinevirtual

Definition at line 137 of file device.hpp.

137 {};
Here is the caller graph for this function:

◆ set_mode()

virtual bool hw::device::set_mode ( device_mode  mode)
inlinevirtual

Reimplemented in hw::core::device_default.

Definition at line 130 of file device.hpp.

130 { this->mode = mode; return true; }
device_mode mode
Definition: device.hpp:251
Here is the caller graph for this function:

◆ set_name()

virtual bool hw::device::set_name ( const std::string &  name)
pure virtual

Implemented in hw::core::device_default.

Here is the caller graph for this function:

◆ set_network_type()

virtual void hw::device::set_network_type ( cryptonote::network_type  network_type)
inlinevirtual

Definition at line 248 of file device.hpp.

248 { }
Here is the caller graph for this function:

◆ set_passphrase()

virtual void hw::device::set_passphrase ( const epee::wipeable_string passphrase)
inlinevirtual

Definition at line 140 of file device.hpp.

140 {}

◆ set_pin()

virtual void hw::device::set_pin ( const epee::wipeable_string pin)
inlinevirtual

Definition at line 139 of file device.hpp.

139 {}

◆ try_lock()

virtual bool hw::device::try_lock ( void  )
pure virtual

Implemented in hw::core::device_default.

◆ unlock()

virtual void hw::device::unlock ( void  )
pure virtual

Implemented in hw::core::device_default.

◆ verify_keys()

virtual bool hw::device::verify_keys ( const crypto::secret_key secret_key,
const crypto::public_key public_key 
)
pure virtual

Implemented in hw::core::device_default.

Member Data Documentation

◆ mode

device_mode hw::device::mode
protected

Definition at line 251 of file device.hpp.

◆ name

std::string hw::device::name
protected

Definition at line 89 of file device.hpp.


The documentation for this class was generated from the following file: