35#include <boost/program_options/options_description.hpp>
36#include <boost/program_options/variables_map.hpp>
47#undef MONERO_DEFAULT_LOG_CATEGORY
48#define MONERO_DEFAULT_LOG_CATEGORY "daemon.rpc"
88 static void init_options(boost::program_options::options_description& desc);
90 const boost::program_options::variables_map&
vm,
91 const bool restricted,
92 const std::string& port,
93 bool allow_rpc_payment,
94 const std::string& proxy = {}
280 const std::
string &username_password,
287 template <
typename COMMAND_TYPE>
289 bool get_block_template(
const account_public_address &
address,
const crypto::hash *prev_block,
const cryptonote::blobdata &extra_nonce,
size_t &reserved_offset,
cryptonote::difficulty_type &difficulty,
uint64_t &height,
uint64_t &expected_reward,
block &
b,
uint64_t &seed_height,
crypto::hash &seed_hash,
crypto::hash &next_seed_hash,
epee::json_rpc::error &error_resp);
cryptonote::block b
Definition block.cpp:40
bool disable_rpc_ban
Definition core_rpc_server.h:304
bool on_get_outs_bin(const COMMAND_RPC_GET_OUTPUTS_BIN::request &req, COMMAND_RPC_GET_OUTPUTS_BIN::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:877
bool on_rpc_access_info(const COMMAND_RPC_ACCESS_INFO::request &req, COMMAND_RPC_ACCESS_INFO::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3459
bool on_out_peers(const COMMAND_RPC_OUT_PEERS::request &req, COMMAND_RPC_OUT_PEERS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3100
bool on_get_base_fee_estimate(const COMMAND_RPC_GET_BASE_FEE_ESTIMATE::request &req, COMMAND_RPC_GET_BASE_FEE_ESTIMATE::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2990
bool on_mining_status(const COMMAND_RPC_MINING_STATUS::request &req, COMMAND_RPC_MINING_STATUS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1471
bool on_prune_blockchain(const COMMAND_RPC_PRUNE_BLOCKCHAIN::request &req, COMMAND_RPC_PRUNE_BLOCKCHAIN::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3434
bool on_get_transactions(const COMMAND_RPC_GET_TRANSACTIONS::request &req, COMMAND_RPC_GET_TRANSACTIONS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:974
std::string m_bootstrap_daemon_proxy
Definition core_rpc_server.h:296
bool on_get_info(const COMMAND_RPC_GET_INFO::request &req, COMMAND_RPC_GET_INFO::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:495
bool on_stop_daemon(const COMMAND_RPC_STOP_DAEMON::request &req, COMMAND_RPC_STOP_DAEMON::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1767
bool on_get_coinbase_tx_sum(const COMMAND_RPC_GET_COINBASE_TX_SUM::request &req, COMMAND_RPC_GET_COINBASE_TX_SUM::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2973
bool on_banned(const COMMAND_RPC_BANNED::request &req, COMMAND_RPC_BANNED::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2772
bool on_get_height(const COMMAND_RPC_GET_HEIGHT::request &req, COMMAND_RPC_GET_HEIGHT::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:480
static const command_line::arg_descriptor< bool > arg_rpc_ssl_allow_any_cert
Definition core_rpc_server.h:67
~core_rpc_server()
Definition core_rpc_server.cpp:261
bool fill_block_header_response(const block &blk, bool orphan_status, uint64_t height, const crypto::hash &hash, block_header_response &response, bool fill_pow_hash)
Definition core_rpc_server.cpp:2322
static const command_line::arg_descriptor< std::string > arg_rpc_ssl_ca_certificates
Definition core_rpc_server.h:65
bool on_hard_fork_info(const COMMAND_RPC_HARD_FORK_INFO::request &req, COMMAND_RPC_HARD_FORK_INFO::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2720
static const command_line::arg_descriptor< std::size_t > arg_rpc_max_connections
Definition core_rpc_server.h:77
core_rpc_server(core &cr, nodetool::node_server< cryptonote::t_cryptonote_protocol_handler< cryptonote::core > > &p2p)
Definition core_rpc_server.cpp:172
epee::critical_section m_host_fails_score_lock
Definition core_rpc_server.h:301
static const command_line::arg_descriptor< std::string > arg_rpc_payment_address
Definition core_rpc_server.h:71
bool on_pop_blocks(const COMMAND_RPC_POP_BLOCKS::request &req, COMMAND_RPC_POP_BLOCKS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3223
bool on_add_aux_pow(const COMMAND_RPC_ADD_AUX_POW::request &req, COMMAND_RPC_ADD_AUX_POW::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2060
bool on_get_output_distribution(const COMMAND_RPC_GET_OUTPUT_DISTRIBUTION::request &req, COMMAND_RPC_GET_OUTPUT_DISTRIBUTION::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3333
bool on_set_log_categories(const COMMAND_RPC_SET_LOG_CATEGORIES::request &req, COMMAND_RPC_SET_LOG_CATEGORIES::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1641
bool check_payment(const std::string &client, uint64_t payment, const std::string &rpc, bool same_ts, std::string &message, uint64_t &credits, std::string &top_hash)
Definition core_rpc_server.cpp:413
bool on_get_block_header_by_hash(const COMMAND_RPC_GET_BLOCK_HEADER_BY_HASH::request &req, COMMAND_RPC_GET_BLOCK_HEADER_BY_HASH::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2469
nodetool::node_server< cryptonote::t_cryptonote_protocol_handler< cryptonote::core > > & m_p2p
Definition core_rpc_server.h:293
static const command_line::arg_descriptor< std::string > arg_bootstrap_daemon_proxy
Definition core_rpc_server.h:70
bool on_save_bc(const COMMAND_RPC_SAVE_BC::request &req, COMMAND_RPC_SAVE_BC::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1512
bool on_relay_tx(const COMMAND_RPC_RELAY_TX::request &req, COMMAND_RPC_RELAY_TX::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3235
bool on_get_outs(const COMMAND_RPC_GET_OUTPUTS::request &req, COMMAND_RPC_GET_OUTPUTS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:907
bool on_get_peer_list(const COMMAND_RPC_GET_PEER_LIST::request &req, COMMAND_RPC_GET_PEER_LIST::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1524
bool add_host_fail(const connection_context *ctx, unsigned int score=1)
Definition core_rpc_server.cpp:460
bool on_set_limit(const COMMAND_RPC_SET_LIMIT::request &req, COMMAND_RPC_SET_LIMIT::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3060
bool on_get_info_json(const COMMAND_RPC_GET_INFO::request &req, COMMAND_RPC_GET_INFO::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2709
static const command_line::arg_descriptor< std::string > arg_rpc_ssl_private_key
Definition core_rpc_server.h:63
bool on_submitblock(const COMMAND_RPC_SUBMITBLOCK::request &req, COMMAND_RPC_SUBMITBLOCK::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2179
bool on_get_blocks_by_height(const COMMAND_RPC_GET_BLOCKS_BY_HEIGHT::request &req, COMMAND_RPC_GET_BLOCKS_BY_HEIGHT::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:812
bool on_get_limit(const COMMAND_RPC_GET_LIMIT::request &req, COMMAND_RPC_GET_LIMIT::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3047
bool on_set_bootstrap_daemon(const COMMAND_RPC_SET_BOOTSTRAP_DAEMON::request &req, COMMAND_RPC_SET_BOOTSTRAP_DAEMON::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1745
epee::net_utils::connection_context_base connection_context
Definition core_rpc_server.h:80
bool on_rpc_access_submit_nonce(const COMMAND_RPC_ACCESS_SUBMIT_NONCE::request &req, COMMAND_RPC_ACCESS_SUBMIT_NONCE::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3532
static const command_line::arg_descriptor< uint64_t > arg_rpc_payment_difficulty
Definition core_rpc_server.h:72
bool on_get_block_header_by_height(const COMMAND_RPC_GET_BLOCK_HEADER_BY_HEIGHT::request &req, COMMAND_RPC_GET_BLOCK_HEADER_BY_HEIGHT::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2598
bool check_core_ready()
Definition core_rpc_server.cpp:451
bool on_stop_mining(const COMMAND_RPC_STOP_MINING::request &req, COMMAND_RPC_STOP_MINING::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1451
bool on_send_raw_tx(const COMMAND_RPC_SEND_RAW_TX::request &req, COMMAND_RPC_SEND_RAW_TX::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1295
boost::shared_mutex m_bootstrap_daemon_mutex
Definition core_rpc_server.h:294
static const command_line::arg_descriptor< std::string > arg_rpc_ssl_certificate
Definition core_rpc_server.h:64
bool use_bootstrap_daemon_if_necessary(const invoke_http_mode &mode, const std::string &command_name, const typename COMMAND_TYPE::request &req, typename COMMAND_TYPE::response &res, bool &r)
Definition core_rpc_server.cpp:2348
bool on_set_log_hash_rate(const COMMAND_RPC_SET_LOG_HASH_RATE::request &req, COMMAND_RPC_SET_LOG_HASH_RATE::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1613
CHAIN_HTTP_TO_MAP2(connection_context)
bool on_get_net_stats(const COMMAND_RPC_GET_NET_STATS::request &req, COMMAND_RPC_GET_NET_STATS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:578
bool on_sync_info(const COMMAND_RPC_SYNC_INFO::request &req, COMMAND_RPC_SYNC_INFO::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3287
invoke_http_mode
Definition core_rpc_server.h:286
@ JON
Definition core_rpc_server.h:286
@ JON_RPC
Definition core_rpc_server.h:286
@ BIN
Definition core_rpc_server.h:286
bool on_get_transaction_pool(const COMMAND_RPC_GET_TRANSACTION_POOL::request &req, COMMAND_RPC_GET_TRANSACTION_POOL::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1650
bool on_calcpow(const COMMAND_RPC_CALCPOW::request &req, COMMAND_RPC_CALCPOW::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2023
bool on_get_alt_blocks_hashes(const COMMAND_RPC_GET_ALT_BLOCKS_HASHES::request &req, COMMAND_RPC_GET_ALT_BLOCKS_HASHES::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:785
uint64_t get_block_reward(const block &blk)
Definition core_rpc_server.cpp:2312
bool on_get_block(const COMMAND_RPC_GET_BLOCK::request &req, COMMAND_RPC_GET_BLOCK::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2633
bool get_block_template(const account_public_address &address, const crypto::hash *prev_block, const cryptonote::blobdata &extra_nonce, size_t &reserved_offset, cryptonote::difficulty_type &difficulty, uint64_t &height, uint64_t &expected_reward, block &b, uint64_t &seed_height, crypto::hash &seed_hash, crypto::hash &next_seed_hash, epee::json_rpc::error &error_resp)
Definition core_rpc_server.cpp:1838
bool on_get_output_distribution_bin(const COMMAND_RPC_GET_OUTPUT_DISTRIBUTION::request &req, COMMAND_RPC_GET_OUTPUT_DISTRIBUTION::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3381
bool on_get_blocks(const COMMAND_RPC_GET_BLOCKS_FAST::request &req, COMMAND_RPC_GET_BLOCKS_FAST::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:605
bool on_get_version(const COMMAND_RPC_GET_VERSION::request &req, COMMAND_RPC_GET_VERSION::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2956
bool on_get_block_headers_range(const COMMAND_RPC_GET_BLOCK_HEADERS_RANGE::request &req, COMMAND_RPC_GET_BLOCK_HEADERS_RANGE::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2538
bool on_getblocktemplate(const COMMAND_RPC_GETBLOCKTEMPLATE::request &req, COMMAND_RPC_GETBLOCKTEMPLATE::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1890
bool on_get_transaction_pool_hashes(const COMMAND_RPC_GET_TRANSACTION_POOL_HASHES::request &req, COMMAND_RPC_GET_TRANSACTION_POOL_HASHES::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1700
bool on_set_bans(const COMMAND_RPC_SETBANS::request &req, COMMAND_RPC_SETBANS::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2801
bool on_get_txpool_backlog(const COMMAND_RPC_GET_TRANSACTION_POOL_BACKLOG::request &req, COMMAND_RPC_GET_TRANSACTION_POOL_BACKLOG::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3313
bool on_getminerdata(const COMMAND_RPC_GETMINERDATA::request &req, COMMAND_RPC_GETMINERDATA::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1986
std::unique_ptr< bootstrap_daemon > m_bootstrap_daemon
Definition core_rpc_server.h:295
static const command_line::arg_descriptor< std::string > arg_bootstrap_daemon_address
Definition core_rpc_server.h:68
bool on_get_transaction_pool_hashes_bin(const COMMAND_RPC_GET_TRANSACTION_POOL_HASHES_BIN::request &req, COMMAND_RPC_GET_TRANSACTION_POOL_HASHES_BIN::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1676
bool on_start_mining(const COMMAND_RPC_START_MINING::request &req, COMMAND_RPC_START_MINING::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1400
bool on_set_log_level(const COMMAND_RPC_SET_LOG_LEVEL::request &req, COMMAND_RPC_SET_LOG_LEVEL::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1628
bool on_update(const COMMAND_RPC_UPDATE::request &req, COMMAND_RPC_UPDATE::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3120
bool on_get_output_histogram(const COMMAND_RPC_GET_OUTPUT_HISTOGRAM::request &req, COMMAND_RPC_GET_OUTPUT_HISTOGRAM::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2909
network_type nettype() const
Definition core_rpc_server.h:96
static void init_options(boost::program_options::options_description &desc)
Definition core_rpc_server.cpp:153
bool m_restricted
Definition core_rpc_server.h:300
static const command_line::arg_descriptor< std::size_t > arg_rpc_response_soft_limit
Definition core_rpc_server.h:78
static const command_line::arg_descriptor< std::size_t > arg_rpc_max_connections_per_private_ip
Definition core_rpc_server.h:76
bool m_rpc_payment_allow_free_loopback
Definition core_rpc_server.h:305
bool on_get_transaction_pool_stats(const COMMAND_RPC_GET_TRANSACTION_POOL_STATS::request &req, COMMAND_RPC_GET_TRANSACTION_POOL_STATS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1728
std::chrono::system_clock::time_point m_bootstrap_height_check_time
Definition core_rpc_server.h:298
static const command_line::arg_descriptor< std::string > arg_rpc_ssl
Definition core_rpc_server.h:62
static const command_line::arg_descriptor< std::string > arg_bootstrap_daemon_login
Definition core_rpc_server.h:69
bool m_should_use_bootstrap_daemon
Definition core_rpc_server.h:297
bool on_get_alternate_chains(const COMMAND_RPC_GET_ALTERNATE_CHAINS::request &req, COMMAND_RPC_GET_ALTERNATE_CHAINS::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3014
bool on_get_indexes(const COMMAND_RPC_GET_TX_GLOBAL_OUTPUTS_INDEXES::request &req, COMMAND_RPC_GET_TX_GLOBAL_OUTPUTS_INDEXES::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:954
static const command_line::arg_descriptor< std::size_t > arg_rpc_max_connections_per_public_ip
Definition core_rpc_server.h:75
static const command_line::arg_descriptor< bool > arg_rpc_payment_allow_free_loopback
Definition core_rpc_server.h:74
static const command_line::arg_descriptor< std::string, false, true, 2 > arg_rpc_bind_port
Definition core_rpc_server.h:59
bool on_get_public_nodes(const COMMAND_RPC_GET_PUBLIC_NODES::request &req, COMMAND_RPC_GET_PUBLIC_NODES::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1571
bool on_is_key_image_spent(const COMMAND_RPC_IS_KEY_IMAGE_SPENT::request &req, COMMAND_RPC_IS_KEY_IMAGE_SPENT::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1214
bool set_bootstrap_daemon(const std::string &address, const std::string &username_password, const std::string &proxy)
Definition core_rpc_server.cpp:183
static const command_line::arg_descriptor< uint64_t > arg_rpc_payment_credits
Definition core_rpc_server.h:73
bool on_getblockcount(const COMMAND_RPC_GETBLOCKCOUNT::request &req, COMMAND_RPC_GETBLOCKCOUNT::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1777
static const command_line::arg_descriptor< std::vector< std::string > > arg_rpc_ssl_allowed_fingerprints
Definition core_rpc_server.h:66
bool on_rpc_access_data(const COMMAND_RPC_ACCESS_DATA::request &req, COMMAND_RPC_ACCESS_DATA::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3649
bool m_was_bootstrap_ever_used
Definition core_rpc_server.h:299
bool on_get_hashes(const COMMAND_RPC_GET_HASHES_FAST::request &req, COMMAND_RPC_GET_HASHES_FAST::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:854
std::map< std::string, uint64_t > m_host_fails_score
Definition core_rpc_server.h:302
bool on_rpc_access_account(const COMMAND_RPC_ACCESS_ACCOUNT::request &req, COMMAND_RPC_ACCESS_ACCOUNT::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3678
bool on_rpc_access_tracking(const COMMAND_RPC_ACCESS_TRACKING::request &req, COMMAND_RPC_ACCESS_TRACKING::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3624
bool on_get_last_block_header(const COMMAND_RPC_GET_LAST_BLOCK_HEADER::request &req, COMMAND_RPC_GET_LAST_BLOCK_HEADER::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2437
bool on_flush_txpool(const COMMAND_RPC_FLUSH_TRANSACTION_POOL::request &req, COMMAND_RPC_FLUSH_TRANSACTION_POOL::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2855
std::unique_ptr< rpc_payment > m_rpc_payment
Definition core_rpc_server.h:303
bool on_in_peers(const COMMAND_RPC_IN_PEERS::request &req, COMMAND_RPC_IN_PEERS::response &res, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3110
bool on_rpc_access_pay(const COMMAND_RPC_ACCESS_PAY::request &req, COMMAND_RPC_ACCESS_PAY::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3590
bool on_get_connections(const COMMAND_RPC_GET_CONNECTIONS::request &req, COMMAND_RPC_GET_CONNECTIONS::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2698
bool on_getblockhash(const COMMAND_RPC_GETBLOCKHASH::request &req, COMMAND_RPC_GETBLOCKHASH::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:1793
bool on_get_bans(const COMMAND_RPC_GETBANS::request &req, COMMAND_RPC_GETBANS::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2737
static const command_line::arg_descriptor< std::string > arg_rpc_restricted_bind_port
Definition core_rpc_server.h:60
static const command_line::arg_descriptor< bool > arg_restricted_rpc
Definition core_rpc_server.h:61
std::map< std::string, bool > get_public_nodes(uint32_t credits_per_hash_threshold=0)
Definition core_rpc_server.cpp:197
bool on_generateblocks(const COMMAND_RPC_GENERATEBLOCKS::request &req, COMMAND_RPC_GENERATEBLOCKS::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:2238
core & m_core
Definition core_rpc_server.h:292
bool on_flush_cache(const COMMAND_RPC_FLUSH_CACHE::request &req, COMMAND_RPC_FLUSH_CACHE::response &res, epee::json_rpc::error &error_resp, const connection_context *ctx=NULL)
Definition core_rpc_server.cpp:3523
handles core cryptonote functionality
Definition cryptonote_core.h:87
Definition cryptonote_protocol_handler.h:80
Definition http_server_impl_base.h:50
BOOST_CLASS_VERSION(nodetool::node_server< cryptonote::t_cryptonote_protocol_handler< cryptonote::core > >, 1)
This is the original cryptonote protocol network-events handler, modified by us.
const char * res
Definition hmac_keccak.cpp:42
static epee::net_utils::http::http_simple_client_template< dummy_client > client
Definition http-client.cpp:62
#define MAP_JON_RPC(method_name, callback_f, command_type)
Definition http_server_handlers_map2.h:255
#define BEGIN_URI_MAP2()
Definition http_server_handlers_map2.h:60
#define END_JSON_RPC_MAP()
Definition http_server_handlers_map2.h:277
#define MAP_URI_AUTO_JON2(s_pattern, callback_f, command_type)
Definition http_server_handlers_map2.h:104
#define MAP_URI_AUTO_BIN2(s_pattern, callback_f, command_type)
Definition http_server_handlers_map2.h:106
#define MAP_JON_RPC_WE_IF(method_name, callback_f, command_type, cond)
Definition http_server_handlers_map2.h:213
#define MAP_JON_RPC_WE(method_name, callback_f, command_type)
Definition http_server_handlers_map2.h:233
#define MAP_URI_AUTO_JON2_IF(s_pattern, callback_f, command_type, cond)
Definition http_server_handlers_map2.h:70
#define BEGIN_JSON_RPC_MAP(uri)
Definition http_server_handlers_map2.h:147
#define END_URI_MAP2()
Definition http_server_handlers_map2.h:144
#define const
Definition ipfrdr.c:80
static void init()
Definition logging.cpp:42
static int mode
Definition mdb_dump.c:26
uint32_t address
Definition getifaddr.c:269
Definition portable_binary_archive.hpp:29
crypto namespace.
Definition crypto.cpp:60
POD_CLASS hash
Definition hash.h:49
Definition daemon_handler.cpp:49
Holds cryptonote related classes and helpers.
Definition blockchain_db.cpp:45
boost::multiprecision::uint128_t difficulty_type
Definition difficulty.h:41
network_type
Definition cryptonote_config.h:302
std::string blobdata
Definition blobdatatype.h:39
TODO: (mj-xmr) This will be reduced in an another PR.
Definition byte_slice.h:40
unsigned int uint32_t
Definition stdint.h:126
unsigned __int64 uint64_t
Definition stdint.h:136
Definition command_line.h:53
Definition core_rpc_server_commands_defs.h:2699
Definition core_rpc_server_commands_defs.h:2650
Definition core_rpc_server_commands_defs.h:2526
Definition core_rpc_server_commands_defs.h:2586
Definition core_rpc_server_commands_defs.h:2562
Definition core_rpc_server_commands_defs.h:2610
Definition core_rpc_server_commands_defs.h:1072
Definition core_rpc_server_commands_defs.h:2073
Definition core_rpc_server_commands_defs.h:1050
Definition core_rpc_server_commands_defs.h:2778
Definition core_rpc_server_commands_defs.h:2100
Definition core_rpc_server_commands_defs.h:1134
Definition core_rpc_server_commands_defs.h:2001
Definition core_rpc_server_commands_defs.h:923
Definition core_rpc_server_commands_defs.h:939
Definition core_rpc_server_commands_defs.h:947
Definition core_rpc_server_commands_defs.h:1000
Definition core_rpc_server_commands_defs.h:2283
Definition core_rpc_server_commands_defs.h:292
Definition core_rpc_server_commands_defs.h:2254
Definition core_rpc_server_commands_defs.h:268
Definition core_rpc_server_commands_defs.h:163
Definition core_rpc_server_commands_defs.h:1760
Definition core_rpc_server_commands_defs.h:1244
Definition core_rpc_server_commands_defs.h:1275
Definition core_rpc_server_commands_defs.h:1302
Definition core_rpc_server_commands_defs.h:2217
Definition core_rpc_server_commands_defs.h:1738
Definition core_rpc_server_commands_defs.h:313
Definition core_rpc_server_commands_defs.h:139
Definition core_rpc_server_commands_defs.h:697
Definition core_rpc_server_commands_defs.h:1218
Definition core_rpc_server_commands_defs.h:1856
Definition core_rpc_server_commands_defs.h:797
Definition core_rpc_server_commands_defs.h:527
Definition core_rpc_server_commands_defs.h:571
Definition core_rpc_server_commands_defs.h:2449
Definition core_rpc_server_commands_defs.h:2122
Definition core_rpc_server_commands_defs.h:1373
Definition core_rpc_server_commands_defs.h:1423
Definition core_rpc_server_commands_defs.h:374
Definition core_rpc_server_commands_defs.h:1648
Definition core_rpc_server_commands_defs.h:1597
Definition core_rpc_server_commands_defs.h:1619
Definition core_rpc_server_commands_defs.h:1716
Definition core_rpc_server_commands_defs.h:1573
Definition core_rpc_server_commands_defs.h:491
Definition core_rpc_server_commands_defs.h:2174
Definition core_rpc_server_commands_defs.h:1962
Definition core_rpc_server_commands_defs.h:1936
Definition core_rpc_server_commands_defs.h:458
Definition core_rpc_server_commands_defs.h:850
Definition core_rpc_server_commands_defs.h:1909
Definition core_rpc_server_commands_defs.h:2726
Definition core_rpc_server_commands_defs.h:2751
Definition core_rpc_server_commands_defs.h:2365
Definition core_rpc_server_commands_defs.h:902
Definition core_rpc_server_commands_defs.h:615
Definition core_rpc_server_commands_defs.h:2036
Definition core_rpc_server_commands_defs.h:1789
Definition core_rpc_server_commands_defs.h:1880
Definition core_rpc_server_commands_defs.h:1498
Definition core_rpc_server_commands_defs.h:1454
Definition core_rpc_server_commands_defs.h:1476
Definition core_rpc_server_commands_defs.h:669
Definition core_rpc_server_commands_defs.h:1818
Definition core_rpc_server_commands_defs.h:829
Definition core_rpc_server_commands_defs.h:1118
Definition core_rpc_server_commands_defs.h:2387
Definition core_rpc_server_commands_defs.h:2328
Definition cryptonote_basic.h:512
Definition cryptonote_basic.h:475
Definition jsonrpc_structs.h:32
Definition net_utils_base.h:367
randomx_vm * vm
Definition tests.cpp:20