aboutsummaryrefslogtreecommitdiff
path: root/src/p2p
diff options
context:
space:
mode:
authorrfree2monero <rfreemonero@op.pl>2015-04-08 19:54:07 +0200
committerrfree2monero <rfreemonero@op.pl>2015-04-08 19:54:07 +0200
commit9bfa593eee5a528c70dfaed39feb140a7b10e8b5 (patch)
treeb12e477bbc9e39cf633fde935cf7e8595ae3a4ac /src/p2p
parentupdated unbound cmake for static builds (diff)
downloadmonero-9bfa593eee5a528c70dfaed39feb140a7b10e8b5.tar.xz
[fix] Network 1.8: unlimited the RPC connections
works for unit tests build, too
Diffstat (limited to '')
-rw-r--r--src/p2p/connection_basic.cpp12
-rw-r--r--src/p2p/connection_basic.hpp8
-rw-r--r--src/p2p/net_node.h3
3 files changed, 22 insertions, 1 deletions
diff --git a/src/p2p/connection_basic.cpp b/src/p2p/connection_basic.cpp
index ed15c0986..0454f30e3 100644
--- a/src/p2p/connection_basic.cpp
+++ b/src/p2p/connection_basic.cpp
@@ -94,6 +94,18 @@ namespace epee
namespace net_utils
{
+ std::string to_string(t_connection_type type)
+ {
+ if (type == e_connection_type_NET)
+ return std::string("NET");
+ else if (type == e_connection_type_RPC)
+ return std::string("RPC");
+ else if (type == e_connection_type_P2P)
+ return std::string("P2P");
+
+ return std::string("UNKNOWN");
+ }
+
/* ============================================================================ */
diff --git a/src/p2p/connection_basic.hpp b/src/p2p/connection_basic.hpp
index e9fdc3add..d8101afe4 100644
--- a/src/p2p/connection_basic.hpp
+++ b/src/p2p/connection_basic.hpp
@@ -75,6 +75,14 @@ namespace net_utils
class connection_basic_pimpl; // PIMPL for this class
+ enum t_connection_type { // type of the connection (of this server), e.g. so that we will know how to limit it
+ e_connection_type_NET = 0, // default (not used?)
+ e_connection_type_RPC = 1, // the rpc commands (probably not rate limited, not chunked, etc)
+ e_connection_type_P2P = 2 // to other p2p node (probably limited)
+ };
+
+ std::string to_string(t_connection_type type);
+
class connection_basic { // not-templated base class for rapid developmet of some code parts
public:
std::unique_ptr< connection_basic_pimpl > mI; // my Implementation
diff --git a/src/p2p/net_node.h b/src/p2p/net_node.h
index d956b37f0..f86a4f97b 100644
--- a/src/p2p/net_node.h
+++ b/src/p2p/net_node.h
@@ -84,7 +84,8 @@ namespace nodetool
:m_payload_handler(payload_handler),
m_allow_local_ip(false),
m_no_igd(false),
- m_hide_my_port(false)
+ m_hide_my_port(false),
+ m_net_server( epee::net_utils::e_connection_type_P2P ) // this is a P2P connection of the main p2p node server, because this is class node_server<>
{
m_current_number_of_out_peers = 0;
m_save_graph = false;