mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2024-11-16 00:12:43 +00:00
update config file example, add v6 status to windows daemon window, code cleanup
Signed-off-by: R4SAS <r4sas@i2pmail.org>
This commit is contained in:
parent
d299cbaabd
commit
c359c6e634
@ -142,25 +142,47 @@ namespace win32
|
|||||||
s << bytes << " Bytes\n";
|
s << bytes << " Bytes\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ShowNetworkStatus (std::stringstream& s, RouterStatus status)
|
||||||
|
{
|
||||||
|
switch (status)
|
||||||
|
{
|
||||||
|
case eRouterStatusOK: s << "OK"; break;
|
||||||
|
case eRouterStatusTesting: s << "Test"; break;
|
||||||
|
case eRouterStatusFirewalled: s << "FW"; break;
|
||||||
|
case eRouterStatusUnknown: s << "Unk"; break;
|
||||||
|
case eRouterStatusProxy: s << "Proxy"; break;
|
||||||
|
case eRouterStatusMesh: s << "Mesh"; break;
|
||||||
|
case eRouterStatusError:
|
||||||
|
{
|
||||||
|
s << "Err";
|
||||||
|
switch (i2p::context.GetError ())
|
||||||
|
{
|
||||||
|
case eRouterErrorClockSkew:
|
||||||
|
s << " - Clock skew";
|
||||||
|
break;
|
||||||
|
case eRouterErrorOffline:
|
||||||
|
s << " - Offline";
|
||||||
|
break;
|
||||||
|
case eRouterErrorSymmetricNAT:
|
||||||
|
s << " - Symmetric NAT";
|
||||||
|
break;
|
||||||
|
default: ;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default: s << "Unk";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void PrintMainWindowText (std::stringstream& s)
|
static void PrintMainWindowText (std::stringstream& s)
|
||||||
{
|
{
|
||||||
s << "\n";
|
s << "\n";
|
||||||
s << "Status: ";
|
s << "Status: ";
|
||||||
switch (i2p::context.GetStatus())
|
ShowNetworkStatus (s, i2p::context.GetStatus ());
|
||||||
|
if (i2p::context.SupportsV6 ())
|
||||||
{
|
{
|
||||||
case eRouterStatusOK: s << "OK"; break;
|
s << " / ";
|
||||||
case eRouterStatusTesting: s << "Testing"; break;
|
ShowNetworkStatus (s, i2p::context.GetStatusV6 ());
|
||||||
case eRouterStatusFirewalled: s << "Firewalled"; break;
|
|
||||||
case eRouterStatusError:
|
|
||||||
{
|
|
||||||
switch (i2p::context.GetError())
|
|
||||||
{
|
|
||||||
case eRouterErrorClockSkew: s << "Clock skew"; break;
|
|
||||||
default: s << "Error";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default: s << "Unknown";
|
|
||||||
}
|
}
|
||||||
s << "; ";
|
s << "; ";
|
||||||
s << "Success Rate: " << i2p::tunnel::tunnels.GetTunnelCreationSuccessRate() << "%\n";
|
s << "Success Rate: " << i2p::tunnel::tunnels.GetTunnelCreationSuccessRate() << "%\n";
|
||||||
|
@ -35,14 +35,30 @@
|
|||||||
## Write full CLF-formatted date and time to log (default: write only time)
|
## Write full CLF-formatted date and time to log (default: write only time)
|
||||||
# logclftime = true
|
# logclftime = true
|
||||||
|
|
||||||
## Daemon mode. Router will go to background after start
|
## Daemon mode. Router will go to background after start. Ignored on Windows
|
||||||
# daemon = true
|
# daemon = true
|
||||||
|
|
||||||
## Specify a family, router belongs to (default - none)
|
## Specify a family, router belongs to (default - none)
|
||||||
# family =
|
# family =
|
||||||
|
|
||||||
## External IP address to listen for connections
|
## Network interface to bind to
|
||||||
|
## Updates address4/6 options if they are not set
|
||||||
|
# ifname =
|
||||||
|
## You can specify different interfaces for IPv4 and IPv6
|
||||||
|
# ifname4 =
|
||||||
|
# ifname6 =
|
||||||
|
|
||||||
|
## Local address to bind transport sockets to
|
||||||
|
## Overrides host option if:
|
||||||
|
## For ipv4: if ipv4 = true and nat = false
|
||||||
|
## For ipv6: if 'host' is not set or ipv4 = true
|
||||||
|
# address4 =
|
||||||
|
# address6 =
|
||||||
|
|
||||||
|
## External IPv4 or IPv6 address to listen for connections
|
||||||
## By default i2pd sets IP automatically
|
## By default i2pd sets IP automatically
|
||||||
|
## Sets published NTCP2v4/SSUv4 address to 'host' value if nat = true
|
||||||
|
## Sets published NTCP2v6/SSUv6 address to 'host' value if ipv4 = false
|
||||||
# host = 1.2.3.4
|
# host = 1.2.3.4
|
||||||
|
|
||||||
## Port to listen for connections
|
## Port to listen for connections
|
||||||
@ -55,17 +71,6 @@ ipv4 = true
|
|||||||
## Enable communication through ipv6
|
## Enable communication through ipv6
|
||||||
ipv6 = false
|
ipv6 = false
|
||||||
|
|
||||||
## Network interface to bind to
|
|
||||||
# ifname =
|
|
||||||
## You can specify different interfaces for IPv4 and IPv6
|
|
||||||
# ifname4 =
|
|
||||||
# ifname6 =
|
|
||||||
|
|
||||||
## Enable NTCP transport (default = true)
|
|
||||||
# ntcp = true
|
|
||||||
## If you run i2pd behind a proxy server, you can only use NTCP transport with ntcpproxy option
|
|
||||||
## Should be http://address:port or socks://address:port
|
|
||||||
# ntcpproxy = http://127.0.0.1:8118
|
|
||||||
## Enable SSU transport (default = true)
|
## Enable SSU transport (default = true)
|
||||||
# ssu = true
|
# ssu = true
|
||||||
|
|
||||||
@ -82,6 +87,7 @@ ipv6 = false
|
|||||||
# notransit = true
|
# notransit = true
|
||||||
|
|
||||||
## Router will be floodfill
|
## Router will be floodfill
|
||||||
|
## Note: that mode uses much more network connections and CPU!
|
||||||
# floodfill = true
|
# floodfill = true
|
||||||
|
|
||||||
[http]
|
[http]
|
||||||
|
@ -2,6 +2,10 @@
|
|||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <openssl/x509.h>
|
#include <openssl/x509.h>
|
||||||
#include <openssl/pem.h>
|
#include <openssl/pem.h>
|
||||||
|
|
||||||
|
// Use global placeholders from boost introduced when local_time.hpp is loaded
|
||||||
|
#define BOOST_BIND_GLOBAL_PLACEHOLDERS
|
||||||
|
|
||||||
#include <boost/lexical_cast.hpp>
|
#include <boost/lexical_cast.hpp>
|
||||||
#include <boost/date_time/local_time/local_time.hpp>
|
#include <boost/date_time/local_time/local_time.hpp>
|
||||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||||
|
@ -62,11 +62,11 @@ namespace config {
|
|||||||
("floodfill", bool_switch()->default_value(false), "Router will be floodfill (default: disabled)")
|
("floodfill", bool_switch()->default_value(false), "Router will be floodfill (default: disabled)")
|
||||||
("bandwidth", value<std::string>()->default_value(""), "Bandwidth limit: integer in KBps or letters: L (32), O (256), P (2048), X (>9000)")
|
("bandwidth", value<std::string>()->default_value(""), "Bandwidth limit: integer in KBps or letters: L (32), O (256), P (2048), X (>9000)")
|
||||||
("share", value<int>()->default_value(100), "Limit of transit traffic from max bandwidth in percents. (default: 100)")
|
("share", value<int>()->default_value(100), "Limit of transit traffic from max bandwidth in percents. (default: 100)")
|
||||||
("ntcp", bool_switch()->default_value(false), "Ignored. Always false")
|
("ntcp", bool_switch()->default_value(false), "Deprecated option. Always false")
|
||||||
("ssu", bool_switch()->default_value(true), "Enable SSU transport (default: enabled)")
|
("ssu", bool_switch()->default_value(true), "Enable SSU transport (default: enabled)")
|
||||||
("ntcpproxy", value<std::string>()->default_value(""), "Ignored")
|
("ntcpproxy", value<std::string>()->default_value(""), "Deprecated option")
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
("svcctl", value<std::string>()->default_value(""), "Ignored")
|
("svcctl", value<std::string>()->default_value(""), "Deprecated option")
|
||||||
("insomnia", bool_switch()->default_value(false), "Prevent system from sleeping (default: disabled)")
|
("insomnia", bool_switch()->default_value(false), "Prevent system from sleeping (default: disabled)")
|
||||||
("close", value<std::string>()->default_value("ask"), "Action on close: minimize, exit, ask")
|
("close", value<std::string>()->default_value("ask"), "Action on close: minimize, exit, ask")
|
||||||
#endif
|
#endif
|
||||||
@ -77,9 +77,9 @@ namespace config {
|
|||||||
("limits.coresize", value<uint32_t>()->default_value(0), "Maximum size of corefile in Kb (0 - use system limit)")
|
("limits.coresize", value<uint32_t>()->default_value(0), "Maximum size of corefile in Kb (0 - use system limit)")
|
||||||
("limits.openfiles", value<uint16_t>()->default_value(0), "Maximum number of open files (0 - use system default)")
|
("limits.openfiles", value<uint16_t>()->default_value(0), "Maximum number of open files (0 - use system default)")
|
||||||
("limits.transittunnels", value<uint16_t>()->default_value(2500), "Maximum active transit sessions (default:2500)")
|
("limits.transittunnels", value<uint16_t>()->default_value(2500), "Maximum active transit sessions (default:2500)")
|
||||||
("limits.ntcpsoft", value<uint16_t>()->default_value(0), "Threshold to start probabilistic backoff with ntcp sessions (default: use system limit)")
|
("limits.ntcpsoft", value<uint16_t>()->default_value(0), "Deprecated option")
|
||||||
("limits.ntcphard", value<uint16_t>()->default_value(0), "Maximum number of ntcp sessions (default: use system limit)")
|
("limits.ntcphard", value<uint16_t>()->default_value(0), "Deprecated option")
|
||||||
("limits.ntcpthreads", value<uint16_t>()->default_value(1), "Maximum number of threads used by NTCP DH worker (default: 1)")
|
("limits.ntcpthreads", value<uint16_t>()->default_value(1), "Deprecated option")
|
||||||
;
|
;
|
||||||
|
|
||||||
options_description httpserver("HTTP Server options");
|
options_description httpserver("HTTP Server options");
|
||||||
@ -281,7 +281,7 @@ namespace config {
|
|||||||
|
|
||||||
options_description meshnets("Meshnet transports options");
|
options_description meshnets("Meshnet transports options");
|
||||||
meshnets.add_options()
|
meshnets.add_options()
|
||||||
("meshnets.yggdrasil", bool_switch()->default_value(false), "Support transports through the Yggdrasil (deafult: false)")
|
("meshnets.yggdrasil", bool_switch()->default_value(false), "Support transports through the Yggdrasil (default: false)")
|
||||||
("meshnets.yggaddress", value<std::string>()->default_value(""), "Yggdrasil address to publish")
|
("meshnets.yggaddress", value<std::string>()->default_value(""), "Yggdrasil address to publish")
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@ -593,7 +593,6 @@ namespace client
|
|||||||
m_PublishVerificationTimer.expires_from_now (boost::posix_time::seconds(PUBLISH_VERIFICATION_TIMEOUT));
|
m_PublishVerificationTimer.expires_from_now (boost::posix_time::seconds(PUBLISH_VERIFICATION_TIMEOUT));
|
||||||
m_PublishVerificationTimer.async_wait (std::bind (&LeaseSetDestination::HandlePublishVerificationTimer,
|
m_PublishVerificationTimer.async_wait (std::bind (&LeaseSetDestination::HandlePublishVerificationTimer,
|
||||||
shared_from_this (), std::placeholders::_1));
|
shared_from_this (), std::placeholders::_1));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user