Electroneum
net_node.cpp File Reference
#include <boost/algorithm/string/find_iterator.hpp>
#include <boost/algorithm/string/finder.hpp>
#include <boost/chrono/duration.hpp>
#include <boost/endian/conversion.hpp>
#include <boost/optional/optional.hpp>
#include <boost/thread/future.hpp>
#include <boost/utility/string_ref.hpp>
#include <chrono>
#include <utility>
#include "common/command_line.h"
#include "cryptonote_core/cryptonote_core.h"
#include "cryptonote_protocol/cryptonote_protocol_defs.h"
#include "net_node.h"
#include "net/net_utils_base.h"
#include "net/socks.h"
#include "net/parse.h"
#include "net/tor_address.h"
#include "net/i2p_address.h"
#include "p2p/p2p_protocol_defs.h"
#include "string_tools.h"
Include dependency graph for net_node.cpp:

Go to the source code of this file.

Namespaces

 nodetool
 

Functions

boost::optional< std::vector< proxy > > nodetool::get_proxies (boost::program_options::variables_map const &vm)
 
boost::optional< std::vector< anonymous_inbound > > nodetool::get_anonymous_inbounds (boost::program_options::variables_map const &vm)
 
bool nodetool::is_filtered_command (const epee::net_utils::network_address &address, int command)
 
boost::optional< boost::asio::ip::tcp::socket > nodetool::socks_connect_internal (const std::atomic< bool > &stop_signal, boost::asio::io_service &service, const boost::asio::ip::tcp::endpoint &proxy, const epee::net_utils::network_address &remote)
 

Variables

const command_line::arg_descriptor< std::string > nodetool::arg_p2p_bind_ip = {"p2p-bind-ip", "Interface for p2p network protocol", "0.0.0.0"}
 
const command_line::arg_descriptor< std::string, false, true, 2 > nodetool::arg_p2p_bind_port
 
const command_line::arg_descriptor< uint32_tnodetool::arg_p2p_external_port = {"p2p-external-port", "External port for p2p network protocol (if port forwarding used with NAT)", 0}
 
const command_line::arg_descriptor< boolnodetool::arg_p2p_allow_local_ip = {"allow-local-ip", "Allow local ip add to peer list, mostly in debug purposes"}
 
const command_line::arg_descriptor< std::vector< std::string > > nodetool::arg_p2p_add_peer = {"add-peer", "Manually add peer to local peerlist"}
 
const command_line::arg_descriptor< std::vector< std::string > > nodetool::arg_p2p_add_priority_node = {"add-priority-node", "Specify list of peers to connect to and attempt to keep the connection open"}
 
const command_line::arg_descriptor< std::vector< std::string > > nodetool::arg_p2p_add_exclusive_node
 
const command_line::arg_descriptor< std::vector< std::string > > nodetool::arg_p2p_seed_node = {"seed-node", "Connect to a node to retrieve peer addresses, and disconnect"}
 
const command_line::arg_descriptor< std::vector< std::string > > nodetool::arg_proxy = {"proxy", "<network-type>,<socks-ip:port>[,max_connections] i.e. \"tor,127.0.0.1:9050,100\""}
 
const command_line::arg_descriptor< std::vector< std::string > > nodetool::arg_anonymous_inbound = {"anonymous-inbound", "<hidden-service-address>,<[bind-ip:]port>[,max_connections] i.e. \"x.onion,127.0.0.1:18083,100\""}
 
const command_line::arg_descriptor< boolnodetool::arg_p2p_hide_my_port = {"hide-my-port", "Do not announce yourself as peerlist candidate", false, true}
 
const command_line::arg_descriptor< boolnodetool::arg_no_sync = {"no-sync", "Don't synchronize the blockchain with other peers", false}
 
const command_line::arg_descriptor< boolnodetool::arg_no_igd = {"no-igd", "Disable UPnP port mapping"}
 
const command_line::arg_descriptor< int64_tnodetool::arg_out_peers = {"out-peers", "set max number of out peers", -1}
 
const command_line::arg_descriptor< int64_tnodetool::arg_in_peers = {"in-peers", "set max number of in peers", -1}
 
const command_line::arg_descriptor< int > nodetool::arg_tos_flag = {"tos-flag", "set TOS flag", -1}
 
const command_line::arg_descriptor< int64_tnodetool::arg_limit_rate_up = {"limit-rate-up", "set limit-rate-up [kB/s]", P2P_DEFAULT_LIMIT_RATE_UP}
 
const command_line::arg_descriptor< int64_tnodetool::arg_limit_rate_down = {"limit-rate-down", "set limit-rate-down [kB/s]", P2P_DEFAULT_LIMIT_RATE_DOWN}
 
const command_line::arg_descriptor< int64_tnodetool::arg_limit_rate = {"limit-rate", "set limit-rate [kB/s]", -1}
 
const command_line::arg_descriptor< boolnodetool::arg_save_graph = {"save-graph", "Save data for dr electroneum", false}