aboutsummaryrefslogtreecommitdiff
path: root/contrib/epee/include/net
diff options
context:
space:
mode:
authormoneromooo-monero <moneromooo-monero@users.noreply.github.com>2019-04-13 09:19:38 +0000
committermoneromooo-monero <moneromooo-monero@users.noreply.github.com>2019-04-15 09:14:12 +0000
commitb18f0b10513b0455723518a634595b2f36d5ea25 (patch)
tree23e2ff63654667f8524d35a229e4d9f437d3bf77 /contrib/epee/include/net
parentMerge pull request #5440 (diff)
downloadmonero-b18f0b10513b0455723518a634595b2f36d5ea25.tar.xz
wallet: new --offline option
It will avoid connecting to a daemon (so useful for cold signing using a RPC wallet), and not perform DNS queries.
Diffstat (limited to 'contrib/epee/include/net')
-rw-r--r--contrib/epee/include/net/http_client.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/contrib/epee/include/net/http_client.h b/contrib/epee/include/net/http_client.h
index bb10c8efc..588d5f0e3 100644
--- a/contrib/epee/include/net/http_client.h
+++ b/contrib/epee/include/net/http_client.h
@@ -274,6 +274,7 @@ namespace net_utils
reciev_machine_state m_state;
chunked_state m_chunked_state;
std::string m_chunked_cache;
+ bool m_auto_connect;
critical_section m_lock;
public:
@@ -291,6 +292,7 @@ namespace net_utils
, m_state()
, m_chunked_state()
, m_chunked_cache()
+ , m_auto_connect(true)
, m_lock()
{}
@@ -316,6 +318,11 @@ namespace net_utils
m_net_client.set_ssl(std::move(ssl_options));
}
+ void set_auto_connect(bool auto_connect)
+ {
+ m_auto_connect = auto_connect;
+ }
+
template<typename F>
void set_connector(F connector)
{
@@ -367,6 +374,11 @@ namespace net_utils
CRITICAL_REGION_LOCAL(m_lock);
if(!is_connected())
{
+ if (!m_auto_connect)
+ {
+ MWARNING("Auto connect attempt to " << m_host_buff << ":" << m_port << " disabled");
+ return false;
+ }
MDEBUG("Reconnecting...");
if(!connect(timeout))
{