33 #include <boost/program_options/options_description.hpp> 34 #include <boost/program_options/variables_map.hpp> 37 #include "net/http_server_impl_base.h" 41 #undef MONERO_DEFAULT_LOG_CATEGORY 42 #define MONERO_DEFAULT_LOG_CATEGORY "wallet.rpc" 54 static const char*
tr(
const char* str);
59 bool init(
const boost::program_options::variables_map *vm);
69 BEGIN_JSON_RPC_MAP("/json_rpc")
70 MAP_JON_RPC_WE("get_balance",
on_getbalance, wallet_rpc::COMMAND_RPC_GET_BALANCE)
71 MAP_JON_RPC_WE("get_address",
on_getaddress, wallet_rpc::COMMAND_RPC_GET_ADDRESS)
72 MAP_JON_RPC_WE("get_address_index",
on_getaddress_index, wallet_rpc::COMMAND_RPC_GET_ADDRESS_INDEX)
73 MAP_JON_RPC_WE("getbalance",
on_getbalance, wallet_rpc::COMMAND_RPC_GET_BALANCE)
74 MAP_JON_RPC_WE("getaddress",
on_getaddress, wallet_rpc::COMMAND_RPC_GET_ADDRESS)
75 MAP_JON_RPC_WE("create_address",
on_create_address, wallet_rpc::COMMAND_RPC_CREATE_ADDRESS)
76 MAP_JON_RPC_WE("label_address",
on_label_address, wallet_rpc::COMMAND_RPC_LABEL_ADDRESS)
77 MAP_JON_RPC_WE("get_accounts",
on_get_accounts, wallet_rpc::COMMAND_RPC_GET_ACCOUNTS)
78 MAP_JON_RPC_WE("create_account",
on_create_account, wallet_rpc::COMMAND_RPC_CREATE_ACCOUNT)
79 MAP_JON_RPC_WE("label_account",
on_label_account, wallet_rpc::COMMAND_RPC_LABEL_ACCOUNT)
80 MAP_JON_RPC_WE("get_account_tags",
on_get_account_tags, wallet_rpc::COMMAND_RPC_GET_ACCOUNT_TAGS)
81 MAP_JON_RPC_WE("tag_accounts",
on_tag_accounts, wallet_rpc::COMMAND_RPC_TAG_ACCOUNTS)
82 MAP_JON_RPC_WE("untag_accounts",
on_untag_accounts, wallet_rpc::COMMAND_RPC_UNTAG_ACCOUNTS)
84 MAP_JON_RPC_WE("get_height",
on_getheight, wallet_rpc::COMMAND_RPC_GET_HEIGHT)
85 MAP_JON_RPC_WE("getheight",
on_getheight, wallet_rpc::COMMAND_RPC_GET_HEIGHT)
86 MAP_JON_RPC_WE("transfer",
on_transfer, wallet_rpc::COMMAND_RPC_TRANSFER)
87 MAP_JON_RPC_WE("transfer_split",
on_transfer_split, wallet_rpc::COMMAND_RPC_TRANSFER_SPLIT)
88 MAP_JON_RPC_WE("sign_transfer",
on_sign_transfer, wallet_rpc::COMMAND_RPC_SIGN_TRANSFER)
89 MAP_JON_RPC_WE("submit_transfer",
on_submit_transfer, wallet_rpc::COMMAND_RPC_SUBMIT_TRANSFER)
90 MAP_JON_RPC_WE("sweep_dust",
on_sweep_dust, wallet_rpc::COMMAND_RPC_SWEEP_DUST)
91 MAP_JON_RPC_WE("sweep_unmixable",
on_sweep_dust, wallet_rpc::COMMAND_RPC_SWEEP_DUST)
92 MAP_JON_RPC_WE("sweep_all",
on_sweep_all, wallet_rpc::COMMAND_RPC_SWEEP_ALL)
93 MAP_JON_RPC_WE("sweep_single",
on_sweep_single, wallet_rpc::COMMAND_RPC_SWEEP_SINGLE)
94 MAP_JON_RPC_WE("relay_tx",
on_relay_tx, wallet_rpc::COMMAND_RPC_RELAY_TX)
95 MAP_JON_RPC_WE("store",
on_store, wallet_rpc::COMMAND_RPC_STORE)
96 MAP_JON_RPC_WE("get_payments",
on_get_payments, wallet_rpc::COMMAND_RPC_GET_PAYMENTS)
97 MAP_JON_RPC_WE("get_bulk_payments",
on_get_bulk_payments, wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS)
98 MAP_JON_RPC_WE("incoming_transfers",
on_incoming_transfers, wallet_rpc::COMMAND_RPC_INCOMING_TRANSFERS)
99 MAP_JON_RPC_WE("query_key",
on_query_key, wallet_rpc::COMMAND_RPC_QUERY_KEY)
102 MAP_JON_RPC_WE("stop_wallet",
on_stop_wallet, wallet_rpc::COMMAND_RPC_STOP_WALLET)
103 MAP_JON_RPC_WE("rescan_blockchain",
on_rescan_blockchain, wallet_rpc::COMMAND_RPC_RESCAN_BLOCKCHAIN)
104 MAP_JON_RPC_WE("set_tx_notes",
on_set_tx_notes, wallet_rpc::COMMAND_RPC_SET_TX_NOTES)
105 MAP_JON_RPC_WE("get_tx_notes",
on_get_tx_notes, wallet_rpc::COMMAND_RPC_GET_TX_NOTES)
106 MAP_JON_RPC_WE("set_attribute",
on_set_attribute, wallet_rpc::COMMAND_RPC_SET_ATTRIBUTE)
107 MAP_JON_RPC_WE("get_attribute",
on_get_attribute, wallet_rpc::COMMAND_RPC_GET_ATTRIBUTE)
108 MAP_JON_RPC_WE("get_tx_key",
on_get_tx_key, wallet_rpc::COMMAND_RPC_GET_TX_KEY)
109 MAP_JON_RPC_WE("check_tx_key",
on_check_tx_key, wallet_rpc::COMMAND_RPC_CHECK_TX_KEY)
110 MAP_JON_RPC_WE("get_tx_proof",
on_get_tx_proof, wallet_rpc::COMMAND_RPC_GET_TX_PROOF)
112 MAP_JON_RPC_WE("get_spend_proof",
on_get_spend_proof, wallet_rpc::COMMAND_RPC_GET_SPEND_PROOF)
113 MAP_JON_RPC_WE("check_spend_proof",
on_check_spend_proof, wallet_rpc::COMMAND_RPC_CHECK_SPEND_PROOF)
114 MAP_JON_RPC_WE("get_reserve_proof",
on_get_reserve_proof, wallet_rpc::COMMAND_RPC_GET_RESERVE_PROOF)
115 MAP_JON_RPC_WE("check_reserve_proof",
on_check_reserve_proof, wallet_rpc::COMMAND_RPC_CHECK_RESERVE_PROOF)
116 MAP_JON_RPC_WE("get_transfers",
on_get_transfers, wallet_rpc::COMMAND_RPC_GET_TRANSFERS)
118 MAP_JON_RPC_WE("sign",
on_sign, wallet_rpc::COMMAND_RPC_SIGN)
119 MAP_JON_RPC_WE("verify",
on_verify, wallet_rpc::COMMAND_RPC_VERIFY)
120 MAP_JON_RPC_WE("export_outputs",
on_export_outputs, wallet_rpc::COMMAND_RPC_EXPORT_OUTPUTS)
121 MAP_JON_RPC_WE("import_outputs",
on_import_outputs, wallet_rpc::COMMAND_RPC_IMPORT_OUTPUTS)
122 MAP_JON_RPC_WE("export_key_images",
on_export_key_images, wallet_rpc::COMMAND_RPC_EXPORT_KEY_IMAGES)
123 MAP_JON_RPC_WE("import_key_images",
on_import_key_images, wallet_rpc::COMMAND_RPC_IMPORT_KEY_IMAGES)
124 MAP_JON_RPC_WE("make_uri",
on_make_uri, wallet_rpc::COMMAND_RPC_MAKE_URI)
125 MAP_JON_RPC_WE("parse_uri",
on_parse_uri, wallet_rpc::COMMAND_RPC_PARSE_URI)
126 MAP_JON_RPC_WE("get_address_book",
on_get_address_book, wallet_rpc::COMMAND_RPC_GET_ADDRESS_BOOK_ENTRY)
127 MAP_JON_RPC_WE("add_address_book",
on_add_address_book, wallet_rpc::COMMAND_RPC_ADD_ADDRESS_BOOK_ENTRY)
128 MAP_JON_RPC_WE("delete_address_book",
on_delete_address_book,wallet_rpc::COMMAND_RPC_DELETE_ADDRESS_BOOK_ENTRY)
129 MAP_JON_RPC_WE("refresh",
on_refresh, wallet_rpc::COMMAND_RPC_REFRESH)
130 MAP_JON_RPC_WE("rescan_spent",
on_rescan_spent, wallet_rpc::COMMAND_RPC_RESCAN_SPENT)
131 MAP_JON_RPC_WE("start_mining",
on_start_mining, wallet_rpc::COMMAND_RPC_START_MINING)
132 MAP_JON_RPC_WE("stop_mining",
on_stop_mining, wallet_rpc::COMMAND_RPC_STOP_MINING)
133 MAP_JON_RPC_WE("get_languages",
on_get_languages, wallet_rpc::COMMAND_RPC_GET_LANGUAGES)
134 MAP_JON_RPC_WE("create_wallet",
on_create_wallet, wallet_rpc::COMMAND_RPC_CREATE_WALLET)
135 MAP_JON_RPC_WE("open_wallet",
on_open_wallet, wallet_rpc::COMMAND_RPC_OPEN_WALLET)
136 MAP_JON_RPC_WE("close_wallet",
on_close_wallet, wallet_rpc::COMMAND_RPC_CLOSE_WALLET)
138 MAP_JON_RPC_WE("is_multisig",
on_is_multisig, wallet_rpc::COMMAND_RPC_IS_MULTISIG)
139 MAP_JON_RPC_WE("prepare_multisig",
on_prepare_multisig, wallet_rpc::COMMAND_RPC_PREPARE_MULTISIG)
140 MAP_JON_RPC_WE("make_multisig",
on_make_multisig, wallet_rpc::COMMAND_RPC_MAKE_MULTISIG)
141 MAP_JON_RPC_WE("export_multisig_info",
on_export_multisig, wallet_rpc::COMMAND_RPC_EXPORT_MULTISIG)
142 MAP_JON_RPC_WE("import_multisig_info",
on_import_multisig, wallet_rpc::COMMAND_RPC_IMPORT_MULTISIG)
143 MAP_JON_RPC_WE("finalize_multisig",
on_finalize_multisig, wallet_rpc::COMMAND_RPC_FINALIZE_MULTISIG)
144 MAP_JON_RPC_WE("sign_multisig",
on_sign_multisig, wallet_rpc::COMMAND_RPC_SIGN_MULTISIG)
145 MAP_JON_RPC_WE("submit_multisig",
on_submit_multisig, wallet_rpc::COMMAND_RPC_SUBMIT_MULTISIG)
146 MAP_JON_RPC_WE("get_version",
on_get_version, wallet_rpc::COMMAND_RPC_GET_VERSION)
151 bool on_getbalance(const wallet_rpc::COMMAND_RPC_GET_BALANCE::request& req, wallet_rpc::COMMAND_RPC_GET_BALANCE::response& res,
epee::json_rpc::error& er);
152 bool on_getaddress(const wallet_rpc::COMMAND_RPC_GET_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_GET_ADDRESS::response& res,
epee::json_rpc::error& er);
153 bool on_getaddress_index(const wallet_rpc::COMMAND_RPC_GET_ADDRESS_INDEX::request& req, wallet_rpc::COMMAND_RPC_GET_ADDRESS_INDEX::response& res,
epee::json_rpc::error& er);
154 bool on_create_address(const wallet_rpc::COMMAND_RPC_CREATE_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_CREATE_ADDRESS::response& res,
epee::json_rpc::error& er);
155 bool on_label_address(const wallet_rpc::COMMAND_RPC_LABEL_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_LABEL_ADDRESS::response& res,
epee::json_rpc::error& er);
156 bool on_get_accounts(const wallet_rpc::COMMAND_RPC_GET_ACCOUNTS::request& req, wallet_rpc::COMMAND_RPC_GET_ACCOUNTS::response& res,
epee::json_rpc::error& er);
157 bool on_create_account(const wallet_rpc::COMMAND_RPC_CREATE_ACCOUNT::request& req, wallet_rpc::COMMAND_RPC_CREATE_ACCOUNT::response& res,
epee::json_rpc::error& er);
158 bool on_label_account(const wallet_rpc::COMMAND_RPC_LABEL_ACCOUNT::request& req, wallet_rpc::COMMAND_RPC_LABEL_ACCOUNT::response& res,
epee::json_rpc::error& er);
159 bool on_get_account_tags(const wallet_rpc::COMMAND_RPC_GET_ACCOUNT_TAGS::request& req, wallet_rpc::COMMAND_RPC_GET_ACCOUNT_TAGS::response& res,
epee::json_rpc::error& er);
160 bool on_tag_accounts(const wallet_rpc::COMMAND_RPC_TAG_ACCOUNTS::request& req, wallet_rpc::COMMAND_RPC_TAG_ACCOUNTS::response& res,
epee::json_rpc::error& er);
161 bool on_untag_accounts(const wallet_rpc::COMMAND_RPC_UNTAG_ACCOUNTS::request& req, wallet_rpc::COMMAND_RPC_UNTAG_ACCOUNTS::response& res,
epee::json_rpc::error& er);
162 bool on_set_account_tag_description(const wallet_rpc::COMMAND_RPC_SET_ACCOUNT_TAG_DESCRIPTION::request& req, wallet_rpc::COMMAND_RPC_SET_ACCOUNT_TAG_DESCRIPTION::response& res,
epee::json_rpc::error& er);
163 bool on_getheight(const wallet_rpc::COMMAND_RPC_GET_HEIGHT::request& req, wallet_rpc::COMMAND_RPC_GET_HEIGHT::response& res,
epee::json_rpc::error& er);
164 bool validate_transfer(const
std::list<wallet_rpc::transfer_destination>& destinations, const
std::
string& payment_id,
std::vector<
cryptonote::tx_destination_entry>& dsts,
std::vector<uint8_t>& extra,
bool at_least_one_destination,
epee::json_rpc::error& er);
165 bool on_transfer(const wallet_rpc::COMMAND_RPC_TRANSFER::request& req, wallet_rpc::COMMAND_RPC_TRANSFER::response& res,
epee::json_rpc::error& er);
166 bool on_transfer_split(const wallet_rpc::COMMAND_RPC_TRANSFER_SPLIT::request& req, wallet_rpc::COMMAND_RPC_TRANSFER_SPLIT::response& res,
epee::json_rpc::error& er);
167 bool on_sign_transfer(const wallet_rpc::COMMAND_RPC_SIGN_TRANSFER::request& req, wallet_rpc::COMMAND_RPC_SIGN_TRANSFER::response& res,
epee::json_rpc::error& er);
168 bool on_submit_transfer(const wallet_rpc::COMMAND_RPC_SUBMIT_TRANSFER::request& req, wallet_rpc::COMMAND_RPC_SUBMIT_TRANSFER::response& res,
epee::json_rpc::error& er);
169 bool on_sweep_dust(const wallet_rpc::COMMAND_RPC_SWEEP_DUST::request& req, wallet_rpc::COMMAND_RPC_SWEEP_DUST::response& res,
epee::json_rpc::error& er);
170 bool on_sweep_all(const wallet_rpc::COMMAND_RPC_SWEEP_ALL::request& req, wallet_rpc::COMMAND_RPC_SWEEP_ALL::response& res,
epee::json_rpc::error& er);
171 bool on_sweep_single(const wallet_rpc::COMMAND_RPC_SWEEP_SINGLE::request& req, wallet_rpc::COMMAND_RPC_SWEEP_SINGLE::response& res,
epee::json_rpc::error& er);
172 bool on_relay_tx(const wallet_rpc::COMMAND_RPC_RELAY_TX::request& req, wallet_rpc::COMMAND_RPC_RELAY_TX::response& res,
epee::json_rpc::error& er);
173 bool on_make_integrated_address(const wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_MAKE_INTEGRATED_ADDRESS::response& res,
epee::json_rpc::error& er);
174 bool on_split_integrated_address(const wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::request& req, wallet_rpc::COMMAND_RPC_SPLIT_INTEGRATED_ADDRESS::response& res,
epee::json_rpc::error& er);
175 bool on_store(const wallet_rpc::COMMAND_RPC_STORE::request& req, wallet_rpc::COMMAND_RPC_STORE::response& res,
epee::json_rpc::error& er);
176 bool on_get_payments(const wallet_rpc::COMMAND_RPC_GET_PAYMENTS::request& req, wallet_rpc::COMMAND_RPC_GET_PAYMENTS::response& res,
epee::json_rpc::error& er);
177 bool on_get_bulk_payments(const wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS::request& req, wallet_rpc::COMMAND_RPC_GET_BULK_PAYMENTS::response& res,
epee::json_rpc::error& er);
178 bool on_incoming_transfers(const wallet_rpc::COMMAND_RPC_INCOMING_TRANSFERS::request& req, wallet_rpc::COMMAND_RPC_INCOMING_TRANSFERS::response& res,
epee::json_rpc::error& er);
179 bool on_stop_wallet(const wallet_rpc::COMMAND_RPC_STOP_WALLET::request& req, wallet_rpc::COMMAND_RPC_STOP_WALLET::response& res,
epee::json_rpc::error& er);
180 bool on_rescan_blockchain(const wallet_rpc::COMMAND_RPC_RESCAN_BLOCKCHAIN::request& req, wallet_rpc::COMMAND_RPC_RESCAN_BLOCKCHAIN::response& res,
epee::json_rpc::error& er);
181 bool on_set_tx_notes(const wallet_rpc::COMMAND_RPC_SET_TX_NOTES::request& req, wallet_rpc::COMMAND_RPC_SET_TX_NOTES::response& res,
epee::json_rpc::error& er);
182 bool on_get_tx_notes(const wallet_rpc::COMMAND_RPC_GET_TX_NOTES::request& req, wallet_rpc::COMMAND_RPC_GET_TX_NOTES::response& res,
epee::json_rpc::error& er);
183 bool on_set_attribute(const wallet_rpc::COMMAND_RPC_SET_ATTRIBUTE::request& req, wallet_rpc::COMMAND_RPC_SET_ATTRIBUTE::response& res,
epee::json_rpc::error& er);
184 bool on_get_attribute(const wallet_rpc::COMMAND_RPC_GET_ATTRIBUTE::request& req, wallet_rpc::COMMAND_RPC_GET_ATTRIBUTE::response& res,
epee::json_rpc::error& er);
185 bool on_get_tx_key(const wallet_rpc::COMMAND_RPC_GET_TX_KEY::request& req, wallet_rpc::COMMAND_RPC_GET_TX_KEY::response& res,
epee::json_rpc::error& er);
186 bool on_check_tx_key(const wallet_rpc::COMMAND_RPC_CHECK_TX_KEY::request& req, wallet_rpc::COMMAND_RPC_CHECK_TX_KEY::response& res,
epee::json_rpc::error& er);
187 bool on_get_tx_proof(const wallet_rpc::COMMAND_RPC_GET_TX_PROOF::request& req, wallet_rpc::COMMAND_RPC_GET_TX_PROOF::response& res,
epee::json_rpc::error& er);
188 bool on_check_tx_proof(const wallet_rpc::COMMAND_RPC_CHECK_TX_PROOF::request& req, wallet_rpc::COMMAND_RPC_CHECK_TX_PROOF::response& res,
epee::json_rpc::error& er);
189 bool on_get_spend_proof(const wallet_rpc::COMMAND_RPC_GET_SPEND_PROOF::request& req, wallet_rpc::COMMAND_RPC_GET_SPEND_PROOF::response& res,
epee::json_rpc::error& er);
190 bool on_check_spend_proof(const wallet_rpc::COMMAND_RPC_CHECK_SPEND_PROOF::request& req, wallet_rpc::COMMAND_RPC_CHECK_SPEND_PROOF::response& res,
epee::json_rpc::error& er);
191 bool on_get_reserve_proof(const wallet_rpc::COMMAND_RPC_GET_RESERVE_PROOF::request& req, wallet_rpc::COMMAND_RPC_GET_RESERVE_PROOF::response& res,
epee::json_rpc::error& er);
192 bool on_check_reserve_proof(const wallet_rpc::COMMAND_RPC_CHECK_RESERVE_PROOF::request& req, wallet_rpc::COMMAND_RPC_CHECK_RESERVE_PROOF::response& res,
epee::json_rpc::error& er);
193 bool on_get_transfers(const wallet_rpc::COMMAND_RPC_GET_TRANSFERS::request& req, wallet_rpc::COMMAND_RPC_GET_TRANSFERS::response& res,
epee::json_rpc::error& er);
194 bool on_get_transfer_by_txid(const wallet_rpc::COMMAND_RPC_GET_TRANSFER_BY_TXID::request& req, wallet_rpc::COMMAND_RPC_GET_TRANSFER_BY_TXID::response& res,
epee::json_rpc::error& er);
195 bool on_sign(const wallet_rpc::COMMAND_RPC_SIGN::request& req, wallet_rpc::COMMAND_RPC_SIGN::response& res,
epee::json_rpc::error& er);
196 bool on_verify(const wallet_rpc::COMMAND_RPC_VERIFY::request& req, wallet_rpc::COMMAND_RPC_VERIFY::response& res,
epee::json_rpc::error& er);
197 bool on_export_outputs(const wallet_rpc::COMMAND_RPC_EXPORT_OUTPUTS::request& req, wallet_rpc::COMMAND_RPC_EXPORT_OUTPUTS::response& res,
epee::json_rpc::error& er);
198 bool on_import_outputs(const wallet_rpc::COMMAND_RPC_IMPORT_OUTPUTS::request& req, wallet_rpc::COMMAND_RPC_IMPORT_OUTPUTS::response& res,
epee::json_rpc::error& er);
199 bool on_export_key_images(const wallet_rpc::COMMAND_RPC_EXPORT_KEY_IMAGES::request& req, wallet_rpc::COMMAND_RPC_EXPORT_KEY_IMAGES::response& res,
epee::json_rpc::error& er);
200 bool on_import_key_images(const wallet_rpc::COMMAND_RPC_IMPORT_KEY_IMAGES::request& req, wallet_rpc::COMMAND_RPC_IMPORT_KEY_IMAGES::response& res,
epee::json_rpc::error& er);
201 bool on_make_uri(const wallet_rpc::COMMAND_RPC_MAKE_URI::request& req, wallet_rpc::COMMAND_RPC_MAKE_URI::response& res,
epee::json_rpc::error& er);
202 bool on_parse_uri(const wallet_rpc::COMMAND_RPC_PARSE_URI::request& req, wallet_rpc::COMMAND_RPC_PARSE_URI::response& res,
epee::json_rpc::error& er);
203 bool on_get_address_book(const wallet_rpc::COMMAND_RPC_GET_ADDRESS_BOOK_ENTRY::request& req, wallet_rpc::COMMAND_RPC_GET_ADDRESS_BOOK_ENTRY::response& res,
epee::json_rpc::error& er);
204 bool on_add_address_book(const wallet_rpc::COMMAND_RPC_ADD_ADDRESS_BOOK_ENTRY::request& req, wallet_rpc::COMMAND_RPC_ADD_ADDRESS_BOOK_ENTRY::response& res,
epee::json_rpc::error& er);
205 bool on_delete_address_book(const wallet_rpc::COMMAND_RPC_DELETE_ADDRESS_BOOK_ENTRY::request& req, wallet_rpc::COMMAND_RPC_DELETE_ADDRESS_BOOK_ENTRY::response& res,
epee::json_rpc::error& er);
206 bool on_refresh(const wallet_rpc::COMMAND_RPC_REFRESH::request& req, wallet_rpc::COMMAND_RPC_REFRESH::response& res,
epee::json_rpc::error& er);
207 bool on_rescan_spent(const wallet_rpc::COMMAND_RPC_RESCAN_SPENT::request& req, wallet_rpc::COMMAND_RPC_RESCAN_SPENT::response& res,
epee::json_rpc::error& er);
208 bool on_start_mining(const wallet_rpc::COMMAND_RPC_START_MINING::request& req, wallet_rpc::COMMAND_RPC_START_MINING::response& res,
epee::json_rpc::error& er);
209 bool on_stop_mining(const wallet_rpc::COMMAND_RPC_STOP_MINING::request& req, wallet_rpc::COMMAND_RPC_STOP_MINING::response& res,
epee::json_rpc::error& er);
210 bool on_get_languages(const wallet_rpc::COMMAND_RPC_GET_LANGUAGES::request& req, wallet_rpc::COMMAND_RPC_GET_LANGUAGES::response& res,
epee::json_rpc::error& er);
211 bool on_create_wallet(const wallet_rpc::COMMAND_RPC_CREATE_WALLET::request& req, wallet_rpc::COMMAND_RPC_CREATE_WALLET::response& res,
epee::json_rpc::error& er);
212 bool on_open_wallet(const wallet_rpc::COMMAND_RPC_OPEN_WALLET::request& req, wallet_rpc::COMMAND_RPC_OPEN_WALLET::response& res,
epee::json_rpc::error& er);
213 bool on_close_wallet(const wallet_rpc::COMMAND_RPC_CLOSE_WALLET::request& req, wallet_rpc::COMMAND_RPC_CLOSE_WALLET::response& res,
epee::json_rpc::error& er);
214 bool on_change_wallet_password(const wallet_rpc::COMMAND_RPC_CHANGE_WALLET_PASSWORD::request& req, wallet_rpc::COMMAND_RPC_CHANGE_WALLET_PASSWORD::response& res,
epee::json_rpc::error& er);
215 bool on_is_multisig(const wallet_rpc::COMMAND_RPC_IS_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_IS_MULTISIG::response& res,
epee::json_rpc::error& er);
216 bool on_prepare_multisig(const wallet_rpc::COMMAND_RPC_PREPARE_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_PREPARE_MULTISIG::response& res,
epee::json_rpc::error& er);
217 bool on_make_multisig(const wallet_rpc::COMMAND_RPC_MAKE_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_MAKE_MULTISIG::response& res,
epee::json_rpc::error& er);
218 bool on_export_multisig(const wallet_rpc::COMMAND_RPC_EXPORT_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_EXPORT_MULTISIG::response& res,
epee::json_rpc::error& er);
219 bool on_import_multisig(const wallet_rpc::COMMAND_RPC_IMPORT_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_IMPORT_MULTISIG::response& res,
epee::json_rpc::error& er);
220 bool on_finalize_multisig(const wallet_rpc::COMMAND_RPC_FINALIZE_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_FINALIZE_MULTISIG::response& res,
epee::json_rpc::error& er);
221 bool on_sign_multisig(const wallet_rpc::COMMAND_RPC_SIGN_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_SIGN_MULTISIG::response& res,
epee::json_rpc::error& er);
222 bool on_submit_multisig(const wallet_rpc::COMMAND_RPC_SUBMIT_MULTISIG::request& req, wallet_rpc::COMMAND_RPC_SUBMIT_MULTISIG::response& res,
epee::json_rpc::error& er);
223 bool on_get_version(const wallet_rpc::COMMAND_RPC_GET_VERSION::request& req, wallet_rpc::COMMAND_RPC_GET_VERSION::response& res,
epee::json_rpc::error& er);
226 bool on_query_key(const wallet_rpc::COMMAND_RPC_QUERY_KEY::request& req, wallet_rpc::COMMAND_RPC_QUERY_KEY::response& res,
epee::json_rpc::error& er);
236 template<typename Ts, typename Tu>
238 bool get_tx_key, Ts& tx_key, Tu &amount, Tu &fee,
std::
string &multisig_txset,
std::
string &unsigned_txset,
bool do_not_relay,
239 Ts &tx_hash,
bool get_tx_hex, Ts &tx_blob,
bool get_tx_metadata, Ts &tx_metadata,
epee::json_rpc::error &er);
Definition: unordered_containers_boost_serialization.h:37
crypto namespace.
Definition: crypto.cpp:59
Definition: blockchain_ancestry.cpp:70
Holds cryptonote related classes and helpers.
Definition: db_bdb.cpp:224
bool check_tx_proof(const hash &prefix_hash, const public_key &R, const public_key &A, const boost::optional< public_key > &B, const public_key &D, const signature &sig)
Definition: crypto.h:226
Definition: cryptonote_format_utils.h:41
POD_CLASS hash
Definition: hash.h:49