aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_basic
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2017-10-15 18:25:08 +0200
committerRiccardo Spagni <ric@spagni.net>2017-10-15 18:25:08 +0200
commit960886aa04f0b50265884c0d4338031a93b1bc5d (patch)
treeb74d770e86309091072c4ca66a6dbef7fff5597a /src/cryptonote_basic
parentMerge pull request #2555 (diff)
parentwallet2+API: use separate callbacks for lightwallets (diff)
downloadmonero-960886aa04f0b50265884c0d4338031a93b1bc5d.tar.xz
Merge pull request #2109
97c2e449 wallet2+API: use separate callbacks for lightwallets (Jaquee) d9261867 walletAPI: correct confirmations in txHistory for unsynced wallets (Jaquee) 9442b043 walletAPI: lightwallet exceptions (Jaquee) fc922934 walletAPI: add lightwallet login() and importWalletRequest() (Jaquee) 79207743 walletAPI: init() lightwallet and SSL support (Jaquee) dde5a1fc walletAPI: add tx unlock_time (Jaquee) bba5cbed wallet2: remove obsolete get_num_rct_outputs() call from create_transactions_2 (Jaquee) 7a482f30 wallet2: create_transactions_2 lightwallet support (Jaquee) ce61b818 wallet2: get_outs lightwallet support (Jaquee) 1197cb71 wallet2: commit_tx() lightwallet support (Jaquee) 43b57804 wallet2: refactor is_tx_spendtime_unlocked() (Jaquee) 32e2b003 wallet2: add lightwallet exceptions to common functions (Jaquee) 2e692fc0 wallet2: refresh() lightwallet support (Jaquee) f44d156c my/openmonero API functions (Jaquee) 288d3c75 wallet2: add remove_obsolete_pool_txs() (Jaquee) 2c6aad7e wallet2: add on_pool_tx_removed callback (Jaquee) ff7c30aa wallet2: light wallet member variables (Jaquee) e2a276cb wallet2: add ssl option to init() (Jaquee) a13540be add string_tools::validate_hex() (Jaquee) fd773d88 refactor cryptonote_basic::add_tx_pub_key_to_extra (Jaquee) 8bfa6c2d lightwallet rpc server commands (Jaquee) 76961ddc Serializer: string to integer conversion for MyMonero compatibility (Jaquee) 1cf940f2 epee http_client SSL support (Jaquee) eec10137 CMakeLists.txt - Add openssl include dir (Jaquee)
Diffstat (limited to 'src/cryptonote_basic')
-rw-r--r--src/cryptonote_basic/cryptonote_format_utils.cpp16
-rw-r--r--src/cryptonote_basic/cryptonote_format_utils.h2
2 files changed, 15 insertions, 3 deletions
diff --git a/src/cryptonote_basic/cryptonote_format_utils.cpp b/src/cryptonote_basic/cryptonote_format_utils.cpp
index 6f171f227..d09f4c432 100644
--- a/src/cryptonote_basic/cryptonote_format_utils.cpp
+++ b/src/cryptonote_basic/cryptonote_format_utils.cpp
@@ -324,9 +324,19 @@ namespace cryptonote
//---------------------------------------------------------------
bool add_tx_pub_key_to_extra(transaction& tx, const crypto::public_key& tx_pub_key)
{
- tx.extra.resize(tx.extra.size() + 1 + sizeof(crypto::public_key));
- tx.extra[tx.extra.size() - 1 - sizeof(crypto::public_key)] = TX_EXTRA_TAG_PUBKEY;
- *reinterpret_cast<crypto::public_key*>(&tx.extra[tx.extra.size() - sizeof(crypto::public_key)]) = tx_pub_key;
+ return add_tx_pub_key_to_extra(tx.extra, tx_pub_key);
+ }
+ //---------------------------------------------------------------
+ bool add_tx_pub_key_to_extra(transaction_prefix& tx, const crypto::public_key& tx_pub_key)
+ {
+ return add_tx_pub_key_to_extra(tx.extra, tx_pub_key);
+ }
+ //---------------------------------------------------------------
+ bool add_tx_pub_key_to_extra(std::vector<uint8_t>& tx_extra, const crypto::public_key& tx_pub_key)
+ {
+ tx_extra.resize(tx_extra.size() + 1 + sizeof(crypto::public_key));
+ tx_extra[tx_extra.size() - 1 - sizeof(crypto::public_key)] = TX_EXTRA_TAG_PUBKEY;
+ *reinterpret_cast<crypto::public_key*>(&tx_extra[tx_extra.size() - sizeof(crypto::public_key)]) = tx_pub_key;
return true;
}
//---------------------------------------------------------------
diff --git a/src/cryptonote_basic/cryptonote_format_utils.h b/src/cryptonote_basic/cryptonote_format_utils.h
index 078c8b8a0..f88310c4c 100644
--- a/src/cryptonote_basic/cryptonote_format_utils.h
+++ b/src/cryptonote_basic/cryptonote_format_utils.h
@@ -65,6 +65,8 @@ namespace cryptonote
crypto::public_key get_tx_pub_key_from_extra(const transaction_prefix& tx, size_t pk_index = 0);
crypto::public_key get_tx_pub_key_from_extra(const transaction& tx, size_t pk_index = 0);
bool add_tx_pub_key_to_extra(transaction& tx, const crypto::public_key& tx_pub_key);
+ bool add_tx_pub_key_to_extra(transaction_prefix& tx, const crypto::public_key& tx_pub_key);
+ bool add_tx_pub_key_to_extra(std::vector<uint8_t>& tx_extra, const crypto::public_key& tx_pub_key);
std::vector<crypto::public_key> get_additional_tx_pub_keys_from_extra(const std::vector<uint8_t>& tx_extra);
std::vector<crypto::public_key> get_additional_tx_pub_keys_from_extra(const transaction_prefix& tx);
bool add_additional_tx_pub_keys_to_extra(std::vector<uint8_t>& tx_extra, const std::vector<crypto::public_key>& additional_pub_keys);