Monero
Loading...
Searching...
No Matches
cryptonote::core_rpc_server Class Reference

#include <core_rpc_server.h>

Inheritance diagram for cryptonote::core_rpc_server:
Collaboration diagram for cryptonote::core_rpc_server:

Public Types

typedef epee::net_utils::connection_context_base connection_context

Public Member Functions

 core_rpc_server (core &cr, nodetool::node_server< cryptonote::t_cryptonote_protocol_handler< cryptonote::core > > &p2p)
 ~core_rpc_server ()
bool init (const boost::program_options::variables_map &vm, const bool restricted, const std::string &port, bool allow_rpc_payment, const std::string &proxy={})
network_type nettype () const
 CHAIN_HTTP_TO_MAP2 (connection_context)
bool on_get_height (const COMMAND_RPC_GET_HEIGHT::request &req, COMMAND_RPC_GET_HEIGHT::response &res, const connection_context *ctx=NULL)
bool on_get_blocks (const COMMAND_RPC_GET_BLOCKS_FAST::request &req, COMMAND_RPC_GET_BLOCKS_FAST::response &res, const connection_context *ctx=NULL)
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)
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)
bool on_get_hashes (const COMMAND_RPC_GET_HASHES_FAST::request &req, COMMAND_RPC_GET_HASHES_FAST::response &res, const connection_context *ctx=NULL)
bool on_get_transactions (const COMMAND_RPC_GET_TRANSACTIONS::request &req, COMMAND_RPC_GET_TRANSACTIONS::response &res, const connection_context *ctx=NULL)
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)
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)
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)
bool on_start_mining (const COMMAND_RPC_START_MINING::request &req, COMMAND_RPC_START_MINING::response &res, const connection_context *ctx=NULL)
bool on_stop_mining (const COMMAND_RPC_STOP_MINING::request &req, COMMAND_RPC_STOP_MINING::response &res, const connection_context *ctx=NULL)
bool on_mining_status (const COMMAND_RPC_MINING_STATUS::request &req, COMMAND_RPC_MINING_STATUS::response &res, const connection_context *ctx=NULL)
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)
bool on_get_outs (const COMMAND_RPC_GET_OUTPUTS::request &req, COMMAND_RPC_GET_OUTPUTS::response &res, const connection_context *ctx=NULL)
bool on_get_info (const COMMAND_RPC_GET_INFO::request &req, COMMAND_RPC_GET_INFO::response &res, const connection_context *ctx=NULL)
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)
bool on_save_bc (const COMMAND_RPC_SAVE_BC::request &req, COMMAND_RPC_SAVE_BC::response &res, const connection_context *ctx=NULL)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
bool on_stop_daemon (const COMMAND_RPC_STOP_DAEMON::request &req, COMMAND_RPC_STOP_DAEMON::response &res, const connection_context *ctx=NULL)
bool on_get_limit (const COMMAND_RPC_GET_LIMIT::request &req, COMMAND_RPC_GET_LIMIT::response &res, const connection_context *ctx=NULL)
bool on_set_limit (const COMMAND_RPC_SET_LIMIT::request &req, COMMAND_RPC_SET_LIMIT::response &res, const connection_context *ctx=NULL)
bool on_out_peers (const COMMAND_RPC_OUT_PEERS::request &req, COMMAND_RPC_OUT_PEERS::response &res, const connection_context *ctx=NULL)
bool on_in_peers (const COMMAND_RPC_IN_PEERS::request &req, COMMAND_RPC_IN_PEERS::response &res, const connection_context *ctx=NULL)
bool on_update (const COMMAND_RPC_UPDATE::request &req, COMMAND_RPC_UPDATE::response &res, const connection_context *ctx=NULL)
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)
bool on_pop_blocks (const COMMAND_RPC_POP_BLOCKS::request &req, COMMAND_RPC_POP_BLOCKS::response &res, const connection_context *ctx=NULL)
bool on_getblockcount (const COMMAND_RPC_GETBLOCKCOUNT::request &req, COMMAND_RPC_GETBLOCKCOUNT::response &res, const connection_context *ctx=NULL)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
Public Member Functions inherited from epee::http_server_impl_base< core_rpc_server >
 http_server_impl_base ()
bool init (std::function< void(size_t, uint8_t *)> rng, const std::string &bind_port="0", const std::string &bind_ip="0.0.0.0", const std::string &bind_ipv6_address="::", bool use_ipv6=false, bool require_ipv4=true, std::vector< std::string > access_control_origins=std::vector< std::string >(), boost::optional< net_utils::http::login > user=boost::none, net_utils::ssl_options_t ssl_options=net_utils::ssl_support_t::e_ssl_support_autodetect, const std::size_t max_public_ip_connections=DEFAULT_RPC_MAX_CONNECTIONS_PER_PUBLIC_IP, const std::size_t max_private_ip_connections=DEFAULT_RPC_MAX_CONNECTIONS_PER_PRIVATE_IP, const std::size_t max_connections=DEFAULT_RPC_MAX_CONNECTIONS, const std::size_t response_soft_limit=DEFAULT_RPC_SOFT_LIMIT_SIZE)
bool run (size_t threads_count, bool wait=true)
bool deinit ()
bool timed_wait_server_stop (uint64_t ms)
bool send_stop_signal ()
int get_binded_port ()
long get_connections_count () const
Public Member Functions inherited from epee::net_utils::http::i_http_server_handler< epee::net_utils::connection_context_base >
virtual ~i_http_server_handler ()
virtual bool handle_http_request (const http_request_info &query_info, http_response_info &response, epee::net_utils::connection_context_base &m_conn_context)=0
virtual bool init_server_thread ()
virtual bool deinit_server_thread ()

Static Public Member Functions

static void init_options (boost::program_options::options_description &desc)

Static Public Attributes

static const command_line::arg_descriptor< std::string, false, true, 2 > arg_rpc_bind_port
static const command_line::arg_descriptor< std::string > arg_rpc_restricted_bind_port
static const command_line::arg_descriptor< bool > arg_restricted_rpc
static const command_line::arg_descriptor< std::string > arg_rpc_ssl
static const command_line::arg_descriptor< std::string > arg_rpc_ssl_private_key
static const command_line::arg_descriptor< std::string > arg_rpc_ssl_certificate
static const command_line::arg_descriptor< std::string > arg_rpc_ssl_ca_certificates
static const command_line::arg_descriptor< std::vector< std::string > > arg_rpc_ssl_allowed_fingerprints
static const command_line::arg_descriptor< bool > arg_rpc_ssl_allow_any_cert
static const command_line::arg_descriptor< std::string > arg_bootstrap_daemon_address
static const command_line::arg_descriptor< std::string > arg_bootstrap_daemon_login
static const command_line::arg_descriptor< std::string > arg_bootstrap_daemon_proxy
static const command_line::arg_descriptor< std::string > arg_rpc_payment_address
static const command_line::arg_descriptor< uint64_targ_rpc_payment_difficulty
static const command_line::arg_descriptor< uint64_targ_rpc_payment_credits
static const command_line::arg_descriptor< bool > arg_rpc_payment_allow_free_loopback
static const command_line::arg_descriptor< std::size_t > arg_rpc_max_connections_per_public_ip
static const command_line::arg_descriptor< std::size_t > arg_rpc_max_connections_per_private_ip
static const command_line::arg_descriptor< std::size_t > arg_rpc_max_connections
static const command_line::arg_descriptor< std::size_t > arg_rpc_response_soft_limit

Private Types

enum  invoke_http_mode { JON , BIN , JON_RPC }

Private Member Functions

bool check_core_busy ()
bool check_core_ready ()
bool add_host_fail (const connection_context *ctx, unsigned int score=1)
uint64_t get_block_reward (const block &blk)
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)
std::map< std::string, bool > get_public_nodes (uint32_t credits_per_hash_threshold=0)
bool set_bootstrap_daemon (const std::string &address, const std::string &username_password, const std::string &proxy)
bool set_bootstrap_daemon (const std::string &address, const boost::optional< epee::net_utils::http::login > &credentials, const std::string &proxy)
template<typename COMMAND_TYPE>
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)
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)
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)

Private Attributes

corem_core
nodetool::node_server< cryptonote::t_cryptonote_protocol_handler< cryptonote::core > > & m_p2p
boost::shared_mutex m_bootstrap_daemon_mutex
std::unique_ptr< bootstrap_daemonm_bootstrap_daemon
std::string m_bootstrap_daemon_proxy
bool m_should_use_bootstrap_daemon
std::chrono::system_clock::time_point m_bootstrap_height_check_time
bool m_was_bootstrap_ever_used
bool m_restricted
epee::critical_section m_host_fails_score_lock
std::map< std::string, uint64_tm_host_fails_score
std::unique_ptr< rpc_paymentm_rpc_payment
bool disable_rpc_ban
bool m_rpc_payment_allow_free_loopback

Additional Inherited Members

Protected Member Functions inherited from epee::http_server_impl_base< core_rpc_server >
virtual bool is_host_limit (const net_utils::network_address &na) override final
Protected Attributes inherited from epee::http_server_impl_base< core_rpc_server >
net_utils::boosted_tcp_server< net_utils::http::http_custom_handler< epee::net_utils::connection_context_base > > m_net_server

Member Typedef Documentation

◆ connection_context

Member Enumeration Documentation

◆ invoke_http_mode

Enumerator
JON 
BIN 
JON_RPC 

Constructor & Destructor Documentation

◆ core_rpc_server()

cryptonote::core_rpc_server::core_rpc_server ( core & cr,
nodetool::node_server< cryptonote::t_cryptonote_protocol_handler< cryptonote::core > > & p2p )

◆ ~core_rpc_server()

cryptonote::core_rpc_server::~core_rpc_server ( )

Member Function Documentation

◆ add_host_fail()

bool cryptonote::core_rpc_server::add_host_fail ( const connection_context * ctx,
unsigned int score = 1 )
private

◆ CHAIN_HTTP_TO_MAP2()

cryptonote::core_rpc_server::CHAIN_HTTP_TO_MAP2 ( connection_context )

◆ check_core_busy()

bool cryptonote::core_rpc_server::check_core_busy ( )
private

◆ check_core_ready()

bool cryptonote::core_rpc_server::check_core_ready ( )
private

◆ check_payment()

bool cryptonote::core_rpc_server::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 )
private

◆ fill_block_header_response()

bool cryptonote::core_rpc_server::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 )
private

◆ get_block_reward()

uint64_t cryptonote::core_rpc_server::get_block_reward ( const block & blk)
private

◆ get_block_template()

bool cryptonote::core_rpc_server::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 )
private

◆ get_public_nodes()

std::map< std::string, bool > cryptonote::core_rpc_server::get_public_nodes ( uint32_t credits_per_hash_threshold = 0)
private

◆ init()

bool cryptonote::core_rpc_server::init ( const boost::program_options::variables_map & vm,
const bool restricted,
const std::string & port,
bool allow_rpc_payment,
const std::string & proxy = {} )

◆ init_options()

void cryptonote::core_rpc_server::init_options ( boost::program_options::options_description & desc)
static

◆ nettype()

network_type cryptonote::core_rpc_server::nettype ( ) const
inline

◆ on_add_aux_pow()

bool cryptonote::core_rpc_server::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 )

◆ on_banned()

bool cryptonote::core_rpc_server::on_banned ( const COMMAND_RPC_BANNED::request & req,
COMMAND_RPC_BANNED::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_calcpow()

bool cryptonote::core_rpc_server::on_calcpow ( const COMMAND_RPC_CALCPOW::request & req,
COMMAND_RPC_CALCPOW::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_flush_cache()

bool cryptonote::core_rpc_server::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 )

◆ on_flush_txpool()

bool cryptonote::core_rpc_server::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 )

◆ on_generateblocks()

bool cryptonote::core_rpc_server::on_generateblocks ( const COMMAND_RPC_GENERATEBLOCKS::request & req,
COMMAND_RPC_GENERATEBLOCKS::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_get_alt_blocks_hashes()

bool cryptonote::core_rpc_server::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 )

◆ on_get_alternate_chains()

bool cryptonote::core_rpc_server::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 )

◆ on_get_bans()

bool cryptonote::core_rpc_server::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 )

◆ on_get_base_fee_estimate()

bool cryptonote::core_rpc_server::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 )

◆ on_get_block()

bool cryptonote::core_rpc_server::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 )

◆ on_get_block_header_by_hash()

bool cryptonote::core_rpc_server::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 )

◆ on_get_block_header_by_height()

bool cryptonote::core_rpc_server::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 )

◆ on_get_block_headers_range()

bool cryptonote::core_rpc_server::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 )

◆ on_get_blocks()

bool cryptonote::core_rpc_server::on_get_blocks ( const COMMAND_RPC_GET_BLOCKS_FAST::request & req,
COMMAND_RPC_GET_BLOCKS_FAST::response & res,
const connection_context * ctx = NULL )

◆ on_get_blocks_by_height()

bool cryptonote::core_rpc_server::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 )

◆ on_get_coinbase_tx_sum()

bool cryptonote::core_rpc_server::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 )

◆ on_get_connections()

bool cryptonote::core_rpc_server::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 )

◆ on_get_hashes()

bool cryptonote::core_rpc_server::on_get_hashes ( const COMMAND_RPC_GET_HASHES_FAST::request & req,
COMMAND_RPC_GET_HASHES_FAST::response & res,
const connection_context * ctx = NULL )

◆ on_get_height()

bool cryptonote::core_rpc_server::on_get_height ( const COMMAND_RPC_GET_HEIGHT::request & req,
COMMAND_RPC_GET_HEIGHT::response & res,
const connection_context * ctx = NULL )

◆ on_get_indexes()

bool cryptonote::core_rpc_server::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 )

◆ on_get_info()

bool cryptonote::core_rpc_server::on_get_info ( const COMMAND_RPC_GET_INFO::request & req,
COMMAND_RPC_GET_INFO::response & res,
const connection_context * ctx = NULL )

◆ on_get_info_json()

bool cryptonote::core_rpc_server::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 )

◆ on_get_last_block_header()

bool cryptonote::core_rpc_server::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 )

◆ on_get_limit()

bool cryptonote::core_rpc_server::on_get_limit ( const COMMAND_RPC_GET_LIMIT::request & req,
COMMAND_RPC_GET_LIMIT::response & res,
const connection_context * ctx = NULL )

◆ on_get_net_stats()

bool cryptonote::core_rpc_server::on_get_net_stats ( const COMMAND_RPC_GET_NET_STATS::request & req,
COMMAND_RPC_GET_NET_STATS::response & res,
const connection_context * ctx = NULL )

◆ on_get_output_distribution()

bool cryptonote::core_rpc_server::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 )

◆ on_get_output_distribution_bin()

bool cryptonote::core_rpc_server::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 )

◆ on_get_output_histogram()

bool cryptonote::core_rpc_server::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 )

◆ on_get_outs()

bool cryptonote::core_rpc_server::on_get_outs ( const COMMAND_RPC_GET_OUTPUTS::request & req,
COMMAND_RPC_GET_OUTPUTS::response & res,
const connection_context * ctx = NULL )

◆ on_get_outs_bin()

bool cryptonote::core_rpc_server::on_get_outs_bin ( const COMMAND_RPC_GET_OUTPUTS_BIN::request & req,
COMMAND_RPC_GET_OUTPUTS_BIN::response & res,
const connection_context * ctx = NULL )

◆ on_get_peer_list()

bool cryptonote::core_rpc_server::on_get_peer_list ( const COMMAND_RPC_GET_PEER_LIST::request & req,
COMMAND_RPC_GET_PEER_LIST::response & res,
const connection_context * ctx = NULL )

◆ on_get_public_nodes()

bool cryptonote::core_rpc_server::on_get_public_nodes ( const COMMAND_RPC_GET_PUBLIC_NODES::request & req,
COMMAND_RPC_GET_PUBLIC_NODES::response & res,
const connection_context * ctx = NULL )

◆ on_get_transaction_pool()

bool cryptonote::core_rpc_server::on_get_transaction_pool ( const COMMAND_RPC_GET_TRANSACTION_POOL::request & req,
COMMAND_RPC_GET_TRANSACTION_POOL::response & res,
const connection_context * ctx = NULL )

◆ on_get_transaction_pool_hashes()

bool cryptonote::core_rpc_server::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 )

◆ on_get_transaction_pool_hashes_bin()

bool cryptonote::core_rpc_server::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 )

◆ on_get_transaction_pool_stats()

bool cryptonote::core_rpc_server::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 )

◆ on_get_transactions()

bool cryptonote::core_rpc_server::on_get_transactions ( const COMMAND_RPC_GET_TRANSACTIONS::request & req,
COMMAND_RPC_GET_TRANSACTIONS::response & res,
const connection_context * ctx = NULL )

◆ on_get_txpool_backlog()

bool cryptonote::core_rpc_server::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 )

◆ on_get_version()

bool cryptonote::core_rpc_server::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 )

◆ on_getblockcount()

bool cryptonote::core_rpc_server::on_getblockcount ( const COMMAND_RPC_GETBLOCKCOUNT::request & req,
COMMAND_RPC_GETBLOCKCOUNT::response & res,
const connection_context * ctx = NULL )

◆ on_getblockhash()

bool cryptonote::core_rpc_server::on_getblockhash ( const COMMAND_RPC_GETBLOCKHASH::request & req,
COMMAND_RPC_GETBLOCKHASH::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_getblocktemplate()

bool cryptonote::core_rpc_server::on_getblocktemplate ( const COMMAND_RPC_GETBLOCKTEMPLATE::request & req,
COMMAND_RPC_GETBLOCKTEMPLATE::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_getminerdata()

bool cryptonote::core_rpc_server::on_getminerdata ( const COMMAND_RPC_GETMINERDATA::request & req,
COMMAND_RPC_GETMINERDATA::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_hard_fork_info()

bool cryptonote::core_rpc_server::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 )

◆ on_in_peers()

bool cryptonote::core_rpc_server::on_in_peers ( const COMMAND_RPC_IN_PEERS::request & req,
COMMAND_RPC_IN_PEERS::response & res,
const connection_context * ctx = NULL )

◆ on_is_key_image_spent()

bool cryptonote::core_rpc_server::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 )

◆ on_mining_status()

bool cryptonote::core_rpc_server::on_mining_status ( const COMMAND_RPC_MINING_STATUS::request & req,
COMMAND_RPC_MINING_STATUS::response & res,
const connection_context * ctx = NULL )

◆ on_out_peers()

bool cryptonote::core_rpc_server::on_out_peers ( const COMMAND_RPC_OUT_PEERS::request & req,
COMMAND_RPC_OUT_PEERS::response & res,
const connection_context * ctx = NULL )

◆ on_pop_blocks()

bool cryptonote::core_rpc_server::on_pop_blocks ( const COMMAND_RPC_POP_BLOCKS::request & req,
COMMAND_RPC_POP_BLOCKS::response & res,
const connection_context * ctx = NULL )

◆ on_prune_blockchain()

bool cryptonote::core_rpc_server::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 )

◆ on_relay_tx()

bool cryptonote::core_rpc_server::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 )

◆ on_rpc_access_account()

bool cryptonote::core_rpc_server::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 )

◆ on_rpc_access_data()

bool cryptonote::core_rpc_server::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 )

◆ on_rpc_access_info()

bool cryptonote::core_rpc_server::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 )

◆ on_rpc_access_pay()

bool cryptonote::core_rpc_server::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 )

◆ on_rpc_access_submit_nonce()

bool cryptonote::core_rpc_server::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 )

◆ on_rpc_access_tracking()

bool cryptonote::core_rpc_server::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 )

◆ on_save_bc()

bool cryptonote::core_rpc_server::on_save_bc ( const COMMAND_RPC_SAVE_BC::request & req,
COMMAND_RPC_SAVE_BC::response & res,
const connection_context * ctx = NULL )

◆ on_send_raw_tx()

bool cryptonote::core_rpc_server::on_send_raw_tx ( const COMMAND_RPC_SEND_RAW_TX::request & req,
COMMAND_RPC_SEND_RAW_TX::response & res,
const connection_context * ctx = NULL )

◆ on_set_bans()

bool cryptonote::core_rpc_server::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 )

◆ on_set_bootstrap_daemon()

bool cryptonote::core_rpc_server::on_set_bootstrap_daemon ( const COMMAND_RPC_SET_BOOTSTRAP_DAEMON::request & req,
COMMAND_RPC_SET_BOOTSTRAP_DAEMON::response & res,
const connection_context * ctx = NULL )

◆ on_set_limit()

bool cryptonote::core_rpc_server::on_set_limit ( const COMMAND_RPC_SET_LIMIT::request & req,
COMMAND_RPC_SET_LIMIT::response & res,
const connection_context * ctx = NULL )

◆ on_set_log_categories()

bool cryptonote::core_rpc_server::on_set_log_categories ( const COMMAND_RPC_SET_LOG_CATEGORIES::request & req,
COMMAND_RPC_SET_LOG_CATEGORIES::response & res,
const connection_context * ctx = NULL )

◆ on_set_log_hash_rate()

bool cryptonote::core_rpc_server::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 )

◆ on_set_log_level()

bool cryptonote::core_rpc_server::on_set_log_level ( const COMMAND_RPC_SET_LOG_LEVEL::request & req,
COMMAND_RPC_SET_LOG_LEVEL::response & res,
const connection_context * ctx = NULL )

◆ on_start_mining()

bool cryptonote::core_rpc_server::on_start_mining ( const COMMAND_RPC_START_MINING::request & req,
COMMAND_RPC_START_MINING::response & res,
const connection_context * ctx = NULL )

◆ on_stop_daemon()

bool cryptonote::core_rpc_server::on_stop_daemon ( const COMMAND_RPC_STOP_DAEMON::request & req,
COMMAND_RPC_STOP_DAEMON::response & res,
const connection_context * ctx = NULL )

◆ on_stop_mining()

bool cryptonote::core_rpc_server::on_stop_mining ( const COMMAND_RPC_STOP_MINING::request & req,
COMMAND_RPC_STOP_MINING::response & res,
const connection_context * ctx = NULL )

◆ on_submitblock()

bool cryptonote::core_rpc_server::on_submitblock ( const COMMAND_RPC_SUBMITBLOCK::request & req,
COMMAND_RPC_SUBMITBLOCK::response & res,
epee::json_rpc::error & error_resp,
const connection_context * ctx = NULL )

◆ on_sync_info()

bool cryptonote::core_rpc_server::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 )

◆ on_update()

bool cryptonote::core_rpc_server::on_update ( const COMMAND_RPC_UPDATE::request & req,
COMMAND_RPC_UPDATE::response & res,
const connection_context * ctx = NULL )

◆ set_bootstrap_daemon() [1/2]

bool cryptonote::core_rpc_server::set_bootstrap_daemon ( const std::string & address,
const boost::optional< epee::net_utils::http::login > & credentials,
const std::string & proxy )
private

◆ set_bootstrap_daemon() [2/2]

bool cryptonote::core_rpc_server::set_bootstrap_daemon ( const std::string & address,
const std::string & username_password,
const std::string & proxy )
private

◆ use_bootstrap_daemon_if_necessary()

template<typename COMMAND_TYPE>
bool cryptonote::core_rpc_server::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 )
private

Member Data Documentation

◆ arg_bootstrap_daemon_address

const command_line::arg_descriptor< std::string > cryptonote::core_rpc_server::arg_bootstrap_daemon_address
static
Initial value:
= {
"bootstrap-daemon-address"
, "URL of a 'bootstrap' remote daemon that the connected wallets can use while this daemon is still not fully synced.\n"
"Use 'auto' to enable automatic public nodes discovering and bootstrap daemon switching"
, ""
}

◆ arg_bootstrap_daemon_login

const command_line::arg_descriptor< std::string > cryptonote::core_rpc_server::arg_bootstrap_daemon_login
static
Initial value:
= {
"bootstrap-daemon-login"
, "Specify username:password for the bootstrap daemon login"
, ""
}

◆ arg_bootstrap_daemon_proxy

const command_line::arg_descriptor< std::string > cryptonote::core_rpc_server::arg_bootstrap_daemon_proxy
static
Initial value:
= {
"bootstrap-daemon-proxy"
, "<ip>:<port> socks proxy to use for bootstrap daemon connections"
, ""
}

◆ arg_restricted_rpc

const command_line::arg_descriptor< bool > cryptonote::core_rpc_server::arg_restricted_rpc
static
Initial value:
= {
"restricted-rpc"
, "Restrict RPC to view only commands and do not return privacy sensitive data in RPC calls"
, false
}

◆ arg_rpc_bind_port

const command_line::arg_descriptor< std::string, false, true, 2 > cryptonote::core_rpc_server::arg_rpc_bind_port
static
Initial value:
= {
"rpc-bind-port"
, "Port for RPC server"
, std::to_string(config::RPC_DEFAULT_PORT)
, [](std::array<bool, 2> testnet_stagenet, bool defaulted, std::string val)->std::string {
if (testnet_stagenet[0] && defaulted)
return std::to_string(config::testnet::RPC_DEFAULT_PORT);
else if (testnet_stagenet[1] && defaulted)
return std::to_string(config::stagenet::RPC_DEFAULT_PORT);
return val;
}
}
uint16_t const RPC_DEFAULT_PORT
Definition cryptonote_config.h:289
uint16_t const RPC_DEFAULT_PORT
Definition cryptonote_config.h:274
uint16_t const RPC_DEFAULT_PORT
Definition cryptonote_config.h:231
const command_line::arg_descriptor< bool, false > arg_testnet_on
Definition cryptonote_core.cpp:75
const command_line::arg_descriptor< bool, false > arg_stagenet_on
Definition cryptonote_core.cpp:80

◆ arg_rpc_max_connections

const command_line::arg_descriptor< std::size_t > cryptonote::core_rpc_server::arg_rpc_max_connections
static
Initial value:
= {
"rpc-max-connections"
, "Max RPC connections permitted"
}
#define DEFAULT_RPC_MAX_CONNECTIONS
Definition cryptonote_config.h:132

◆ arg_rpc_max_connections_per_private_ip

const command_line::arg_descriptor< std::size_t > cryptonote::core_rpc_server::arg_rpc_max_connections_per_private_ip
static
Initial value:
= {
"rpc-max-connections-per-private-ip"
, "Max RPC connections per private and localhost IP permitted"
}
#define DEFAULT_RPC_MAX_CONNECTIONS_PER_PRIVATE_IP
Definition cryptonote_config.h:131

◆ arg_rpc_max_connections_per_public_ip

const command_line::arg_descriptor< std::size_t > cryptonote::core_rpc_server::arg_rpc_max_connections_per_public_ip
static
Initial value:
= {
"rpc-max-connections-per-public-ip"
, "Max RPC connections per public IP permitted"
}
#define DEFAULT_RPC_MAX_CONNECTIONS_PER_PUBLIC_IP
Definition cryptonote_config.h:130

◆ arg_rpc_payment_address

const command_line::arg_descriptor< std::string > cryptonote::core_rpc_server::arg_rpc_payment_address
static
Initial value:
= {
"rpc-payment-address"
, "Restrict RPC to clients sending micropayment to this address"
, ""
}

◆ arg_rpc_payment_allow_free_loopback

const command_line::arg_descriptor< bool > cryptonote::core_rpc_server::arg_rpc_payment_allow_free_loopback
static
Initial value:
= {
"rpc-payment-allow-free-loopback"
, "Allow free access from the loopback address (ie, the local host)"
, false
}

◆ arg_rpc_payment_credits

const command_line::arg_descriptor< uint64_t > cryptonote::core_rpc_server::arg_rpc_payment_credits
static
Initial value:
= {
"rpc-payment-credits"
, "Restrict RPC to clients sending micropayment, yields that many credits per payment"
}
#define DEFAULT_PAYMENT_CREDITS_PER_HASH
Definition core_rpc_server.cpp:72

◆ arg_rpc_payment_difficulty

const command_line::arg_descriptor< uint64_t > cryptonote::core_rpc_server::arg_rpc_payment_difficulty
static
Initial value:
= {
"rpc-payment-difficulty"
, "Restrict RPC to clients sending micropayment at this difficulty"
}
#define DEFAULT_PAYMENT_DIFFICULTY
Definition core_rpc_server.cpp:71

◆ arg_rpc_response_soft_limit

const command_line::arg_descriptor< std::size_t > cryptonote::core_rpc_server::arg_rpc_response_soft_limit
static
Initial value:
= {
"rpc-response-soft-limit"
, "Max response bytes that can be queued, enforced at next response attempt"
}
#define DEFAULT_RPC_SOFT_LIMIT_SIZE
Definition cryptonote_config.h:133

◆ arg_rpc_restricted_bind_port

const command_line::arg_descriptor< std::string > cryptonote::core_rpc_server::arg_rpc_restricted_bind_port
static
Initial value:
= {
"rpc-restricted-bind-port"
, "Port for restricted RPC server"
, ""
}

◆ arg_rpc_ssl

const command_line::arg_descriptor<std::string> cryptonote::core_rpc_server::arg_rpc_ssl
static

◆ arg_rpc_ssl_allow_any_cert

const command_line::arg_descriptor<bool> cryptonote::core_rpc_server::arg_rpc_ssl_allow_any_cert
static

◆ arg_rpc_ssl_allowed_fingerprints

const command_line::arg_descriptor<std::vector<std::string> > cryptonote::core_rpc_server::arg_rpc_ssl_allowed_fingerprints
static

◆ arg_rpc_ssl_ca_certificates

const command_line::arg_descriptor<std::string> cryptonote::core_rpc_server::arg_rpc_ssl_ca_certificates
static

◆ arg_rpc_ssl_certificate

const command_line::arg_descriptor<std::string> cryptonote::core_rpc_server::arg_rpc_ssl_certificate
static

◆ arg_rpc_ssl_private_key

const command_line::arg_descriptor<std::string> cryptonote::core_rpc_server::arg_rpc_ssl_private_key
static

◆ disable_rpc_ban

bool cryptonote::core_rpc_server::disable_rpc_ban
private

◆ m_bootstrap_daemon

std::unique_ptr<bootstrap_daemon> cryptonote::core_rpc_server::m_bootstrap_daemon
private

◆ m_bootstrap_daemon_mutex

boost::shared_mutex cryptonote::core_rpc_server::m_bootstrap_daemon_mutex
private

◆ m_bootstrap_daemon_proxy

std::string cryptonote::core_rpc_server::m_bootstrap_daemon_proxy
private

◆ m_bootstrap_height_check_time

std::chrono::system_clock::time_point cryptonote::core_rpc_server::m_bootstrap_height_check_time
private

◆ m_core

core& cryptonote::core_rpc_server::m_core
private

◆ m_host_fails_score

std::map<std::string, uint64_t> cryptonote::core_rpc_server::m_host_fails_score
private

◆ m_host_fails_score_lock

epee::critical_section cryptonote::core_rpc_server::m_host_fails_score_lock
private

◆ m_p2p

◆ m_restricted

bool cryptonote::core_rpc_server::m_restricted
private

◆ m_rpc_payment

std::unique_ptr<rpc_payment> cryptonote::core_rpc_server::m_rpc_payment
private

◆ m_rpc_payment_allow_free_loopback

bool cryptonote::core_rpc_server::m_rpc_payment_allow_free_loopback
private

◆ m_should_use_bootstrap_daemon

bool cryptonote::core_rpc_server::m_should_use_bootstrap_daemon
private

◆ m_was_bootstrap_ever_used

bool cryptonote::core_rpc_server::m_was_bootstrap_ever_used
private

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