Electroneum
Loading...
Searching...
No Matches
nodetool::node_server< t_payload_net_handler > Class Template Reference

#include <net_node.h>

Inheritance diagram for nodetool::node_server< t_payload_net_handler >:
Collaboration diagram for nodetool::node_server< t_payload_net_handler >:

Public Types

typedef t_payload_net_handler payload_net_handler

Public Member Functions

 node_server (t_payload_net_handler &payload_handler)
virtual ~node_server ()
bool run ()
network_zone & add_zone (epee::net_utils::zone zone)
bool init (const boost::program_options::variables_map &vm)
bool deinit ()
bool send_stop_signal ()
uint32_t get_this_peer_port ()
t_payload_net_handler & get_payload_object ()
bool log_peerlist ()
bool log_connections ()
virtual uint64_t get_public_connections_count ()
size_t get_public_outgoing_connections_count ()
size_t get_public_white_peers_count ()
size_t get_public_gray_peers_count ()
void get_public_peerlist (std::vector< peerlist_entry > &gray, std::vector< peerlist_entry > &white)
size_t get_zone_count () const
void change_max_out_public_peers (size_t count)
void change_max_in_public_peers (size_t count)
virtual bool block_host (const epee::net_utils::network_address &adress, time_t seconds=P2P_IP_BLOCKTIME)
virtual bool unblock_host (const epee::net_utils::network_address &address)
virtual std::map< std::string, time_t > get_blocked_hosts ()
virtual void add_used_stripe_peer (const typename t_payload_net_handler::connection_context &context)
virtual void remove_used_stripe_peer (const typename t_payload_net_handler::connection_context &context)
virtual void clear_used_stripe_peers ()
void set_save_graph (bool save_graph)
void set_rpc_port (uint16_t rpc_port)
Public Member Functions inherited from epee::levin::levin_commands_handler< p2p_connection_context_t< t_payload_net_handler::connection_context > >
virtual int invoke (int command, const epee::span< const uint8_t > in_buff, std::string &buff_out, p2p_connection_context_t< t_payload_net_handler::connection_context > &context)=0
virtual int notify (int command, const epee::span< const uint8_t > in_buff, p2p_connection_context_t< t_payload_net_handler::connection_context > &context)=0
virtual void callback (p2p_connection_context_t< t_payload_net_handler::connection_context > &context)
virtual void on_connection_new (p2p_connection_context_t< t_payload_net_handler::connection_context > &context)
virtual void on_connection_close (p2p_connection_context_t< t_payload_net_handler::connection_context > &context)
virtual ~levin_commands_handler ()
Public Member Functions inherited from nodetool::i_p2p_endpoint< t_payload_net_handler::connection_context >
virtual void for_each_connection (std::function< bool(t_payload_net_handler::connection_context &, peerid_type, uint32_t)> f)=0
virtual bool for_connection (const boost::uuids::uuid &, std::function< bool(t_payload_net_handler::connection_context &, peerid_type, uint32_t)> f)=0
virtual void add_used_stripe_peer (const t_payload_net_handler::connection_context &context)=0
virtual void remove_used_stripe_peer (const t_payload_net_handler::connection_context &context)=0

Static Public Member Functions

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

Additional Inherited Members

Protected Member Functions inherited from epee::net_utils::i_connection_filter
virtual ~i_connection_filter ()

Detailed Description

template<class t_payload_net_handler>
class nodetool::node_server< t_payload_net_handler >

Definition at line 117 of file net_node.h.

Member Typedef Documentation

◆ payload_net_handler

template<class t_payload_net_handler>
typedef t_payload_net_handler nodetool::node_server< t_payload_net_handler >::payload_net_handler

Definition at line 210 of file net_node.h.

Constructor & Destructor Documentation

◆ node_server()

template<class t_payload_net_handler>
nodetool::node_server< t_payload_net_handler >::node_server ( t_payload_net_handler & payload_handler)
inline

Definition at line 212 of file net_node.h.

213 : m_payload_handler(payload_handler),
214 m_external_port(0),
215 m_rpc_port(0),
216 m_allow_local_ip(false),
217 m_hide_my_port(false),
218 m_no_igd(false),
219 m_offline(false),
220 m_save_graph(false),
221 is_closing(false),
222 m_network_id()
223 {}

◆ ~node_server()

template<class t_payload_net_handler>
virtual nodetool::node_server< t_payload_net_handler >::~node_server ( )
virtual

Member Function Documentation

◆ add_used_stripe_peer()

template<class t_payload_net_handler>
virtual void nodetool::node_server< t_payload_net_handler >::add_used_stripe_peer ( const typename t_payload_net_handler::connection_context & context)
virtual

◆ add_zone()

template<class t_payload_net_handler>
network_zone & nodetool::node_server< t_payload_net_handler >::add_zone ( epee::net_utils::zone zone)

◆ block_host()

template<class t_payload_net_handler>
virtual bool nodetool::node_server< t_payload_net_handler >::block_host ( const epee::net_utils::network_address & adress,
time_t seconds = P2P_IP_BLOCKTIME )
virtual

Implements nodetool::i_p2p_endpoint< t_payload_net_handler::connection_context >.

Here is the caller graph for this function:

◆ change_max_in_public_peers()

template<class t_payload_net_handler>
void nodetool::node_server< t_payload_net_handler >::change_max_in_public_peers ( size_t count)

◆ change_max_out_public_peers()

template<class t_payload_net_handler>
void nodetool::node_server< t_payload_net_handler >::change_max_out_public_peers ( size_t count)

◆ clear_used_stripe_peers()

template<class t_payload_net_handler>
virtual void nodetool::node_server< t_payload_net_handler >::clear_used_stripe_peers ( )
virtual

◆ deinit()

template<class t_payload_net_handler>
bool nodetool::node_server< t_payload_net_handler >::deinit ( )
Here is the caller graph for this function:

◆ get_blocked_hosts()

template<class t_payload_net_handler>
virtual std::map< std::string, time_t > nodetool::node_server< t_payload_net_handler >::get_blocked_hosts ( )
inlinevirtual

Implements nodetool::i_p2p_endpoint< t_payload_net_handler::connection_context >.

Definition at line 252 of file net_node.h.

252{ CRITICAL_REGION_LOCAL(m_blocked_hosts_lock); return m_blocked_hosts; }
#define CRITICAL_REGION_LOCAL(x)
Definition syncobj.h:228
Here is the caller graph for this function:

◆ get_payload_object()

template<class t_payload_net_handler>
t_payload_net_handler & nodetool::node_server< t_payload_net_handler >::get_payload_object ( )

◆ get_public_connections_count()

template<class t_payload_net_handler>
virtual uint64_t nodetool::node_server< t_payload_net_handler >::get_public_connections_count ( )
virtual

◆ get_public_gray_peers_count()

template<class t_payload_net_handler>
size_t nodetool::node_server< t_payload_net_handler >::get_public_gray_peers_count ( )

◆ get_public_outgoing_connections_count()

template<class t_payload_net_handler>
size_t nodetool::node_server< t_payload_net_handler >::get_public_outgoing_connections_count ( )

◆ get_public_peerlist()

template<class t_payload_net_handler>
void nodetool::node_server< t_payload_net_handler >::get_public_peerlist ( std::vector< peerlist_entry > & gray,
std::vector< peerlist_entry > & white )

◆ get_public_white_peers_count()

template<class t_payload_net_handler>
size_t nodetool::node_server< t_payload_net_handler >::get_public_white_peers_count ( )

◆ get_this_peer_port()

template<class t_payload_net_handler>
uint32_t nodetool::node_server< t_payload_net_handler >::get_this_peer_port ( )
inline

Definition at line 233 of file net_node.h.

233{return m_listening_port;}

◆ get_zone_count()

template<class t_payload_net_handler>
size_t nodetool::node_server< t_payload_net_handler >::get_zone_count ( ) const
inlinevirtual

Implements nodetool::i_p2p_endpoint< t_payload_net_handler::connection_context >.

Definition at line 246 of file net_node.h.

246{ return m_network_zones.size(); }

◆ init()

template<class t_payload_net_handler>
bool nodetool::node_server< t_payload_net_handler >::init ( const boost::program_options::variables_map & vm)
Here is the caller graph for this function:

◆ init_options()

template<class t_payload_net_handler>
void nodetool::node_server< t_payload_net_handler >::init_options ( boost::program_options::options_description & desc)
static

◆ log_connections()

template<class t_payload_net_handler>
bool nodetool::node_server< t_payload_net_handler >::log_connections ( )

◆ log_peerlist()

template<class t_payload_net_handler>
bool nodetool::node_server< t_payload_net_handler >::log_peerlist ( )

◆ remove_used_stripe_peer()

template<class t_payload_net_handler>
virtual void nodetool::node_server< t_payload_net_handler >::remove_used_stripe_peer ( const typename t_payload_net_handler::connection_context & context)
virtual

◆ run()

template<class t_payload_net_handler>
bool nodetool::node_server< t_payload_net_handler >::run ( )
Here is the caller graph for this function:

◆ send_stop_signal()

template<class t_payload_net_handler>
bool nodetool::node_server< t_payload_net_handler >::send_stop_signal ( )

◆ set_rpc_port()

template<class t_payload_net_handler>
void nodetool::node_server< t_payload_net_handler >::set_rpc_port ( uint16_t rpc_port)
inline

Definition at line 407 of file net_node.h.

408 {
409 m_rpc_port = rpc_port;
410 }

◆ set_save_graph()

template<class t_payload_net_handler>
void nodetool::node_server< t_payload_net_handler >::set_save_graph ( bool save_graph)
inline

Definition at line 401 of file net_node.h.

402 {
403 m_save_graph = save_graph;
405 }
static void set_save_graph(bool save_graph)

◆ unblock_host()

template<class t_payload_net_handler>
virtual bool nodetool::node_server< t_payload_net_handler >::unblock_host ( const epee::net_utils::network_address & address)
virtual

Implements nodetool::i_p2p_endpoint< t_payload_net_handler::connection_context >.

Here is the caller graph for this function:

The documentation for this class was generated from the following file:
  • /home/abuild/rpmbuild/BUILD/electroneum-5.1.3.1-build/electroneum-5.1.3.1/src/p2p/net_node.h