mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-01-21 23:54:14 +00:00
perfecting qt status page
This commit is contained in:
parent
11dca2b352
commit
7225231814
@ -198,7 +198,10 @@ namespace http {
|
|||||||
s << "<b>ERROR:</b> " << string << "<br>\r\n";
|
s << "<b>ERROR:</b> " << string << "<br>\r\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
void ShowStatus (std::stringstream& s, bool includeHiddenContent)
|
void ShowStatus (
|
||||||
|
std::stringstream& s,
|
||||||
|
bool includeHiddenContent,
|
||||||
|
i2p::http::OutputFormatEnum outputFormat)
|
||||||
{
|
{
|
||||||
s << "<b>Uptime:</b> ";
|
s << "<b>Uptime:</b> ";
|
||||||
ShowUptime(s, i2p::context.GetUptime ());
|
ShowUptime(s, i2p::context.GetUptime ());
|
||||||
@ -245,9 +248,12 @@ namespace http {
|
|||||||
ShowTraffic (s, i2p::transport::transports.GetTotalTransitTransmittedBytes ());
|
ShowTraffic (s, i2p::transport::transports.GetTotalTransitTransmittedBytes ());
|
||||||
s << " (" << (double) i2p::transport::transports.GetTransitBandwidth () / 1024 << " KiB/s)<br>\r\n";
|
s << " (" << (double) i2p::transport::transports.GetTransitBandwidth () / 1024 << " KiB/s)<br>\r\n";
|
||||||
s << "<b>Data path:</b> " << i2p::fs::GetDataDir() << "<br>\r\n";
|
s << "<b>Data path:</b> " << i2p::fs::GetDataDir() << "<br>\r\n";
|
||||||
s << "<div class='slide'><label for='slide-info'>Hidden content. Press on text to see.</label>\r\n<input type='checkbox' id='slide-info'/>\r\n<p class='content'>\r\n";
|
s << "<div class='slide'>";
|
||||||
if(includeHiddenContent) {
|
if((outputFormat==OutputFormatEnum::forWebConsole)||!includeHiddenContent) {
|
||||||
s << "<b>Router Ident:</b> " << i2p::context.GetRouterInfo().GetIdentHashBase64() << "<br>\r\n";
|
s << "<label for='slide-info'>Hidden content. Press on text to see.</label>\r\n<input type='checkbox' id='slide-info'/>\r\n<p class='content'>\r\n";
|
||||||
|
}
|
||||||
|
if(includeHiddenContent) {
|
||||||
|
s << "<b>Router Ident:</b> " << i2p::context.GetRouterInfo().GetIdentHashBase64() << "<br>\r\n";
|
||||||
s << "<b>Router Family:</b> " << i2p::context.GetRouterInfo().GetProperty("family") << "<br>\r\n";
|
s << "<b>Router Family:</b> " << i2p::context.GetRouterInfo().GetProperty("family") << "<br>\r\n";
|
||||||
s << "<b>Router Caps:</b> " << i2p::context.GetRouterInfo().GetProperty("caps") << "<br>\r\n";
|
s << "<b>Router Caps:</b> " << i2p::context.GetRouterInfo().GetProperty("caps") << "<br>\r\n";
|
||||||
s << "<b>Our external address:</b>" << "<br>\r\n" ;
|
s << "<b>Our external address:</b>" << "<br>\r\n" ;
|
||||||
@ -272,9 +278,12 @@ namespace http {
|
|||||||
}
|
}
|
||||||
s << address->host.to_string() << ":" << address->port << "<br>\r\n";
|
s << address->host.to_string() << ":" << address->port << "<br>\r\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
s << "</p>\r\n</div>\r\n";
|
s << "</p>\r\n</div>\r\n";
|
||||||
s << "<b>Routers:</b> " << i2p::data::netdb.GetNumRouters () << " ";
|
if(outputFormat==OutputFormatEnum::forQtUi) {
|
||||||
|
s << "<br>";
|
||||||
|
}
|
||||||
|
s << "<b>Routers:</b> " << i2p::data::netdb.GetNumRouters () << " ";
|
||||||
s << "<b>Floodfills:</b> " << i2p::data::netdb.GetNumFloodfills () << " ";
|
s << "<b>Floodfills:</b> " << i2p::data::netdb.GetNumFloodfills () << " ";
|
||||||
s << "<b>LeaseSets:</b> " << i2p::data::netdb.GetNumLeaseSets () << "<br>\r\n";
|
s << "<b>LeaseSets:</b> " << i2p::data::netdb.GetNumLeaseSets () << "<br>\r\n";
|
||||||
|
|
||||||
@ -285,15 +294,17 @@ namespace http {
|
|||||||
s << "<b>Client Tunnels:</b> " << std::to_string(clientTunnelCount) << " ";
|
s << "<b>Client Tunnels:</b> " << std::to_string(clientTunnelCount) << " ";
|
||||||
s << "<b>Transit Tunnels:</b> " << std::to_string(transitTunnelCount) << "<br>\r\n<br>\r\n";
|
s << "<b>Transit Tunnels:</b> " << std::to_string(transitTunnelCount) << "<br>\r\n<br>\r\n";
|
||||||
|
|
||||||
s << "<table><caption>Services</caption><tr><th>Service</th><th>State</th></tr>\r\n";
|
if(outputFormat==OutputFormatEnum::forWebConsole) {
|
||||||
s << "<tr><td>" << "HTTP Proxy" << "</td><td><div class='" << ((i2p::client::context.GetHttpProxy ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
s << "<table><caption>Services</caption><tr><th>Service</th><th>State</th></tr>\r\n";
|
||||||
s << "<tr><td>" << "SOCKS Proxy" << "</td><td><div class='" << ((i2p::client::context.GetSocksProxy ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
s << "<tr><td>" << "HTTP Proxy" << "</td><td><div class='" << ((i2p::client::context.GetHttpProxy ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
||||||
s << "<tr><td>" << "BOB" << "</td><td><div class='" << ((i2p::client::context.GetBOBCommandChannel ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
s << "<tr><td>" << "SOCKS Proxy" << "</td><td><div class='" << ((i2p::client::context.GetSocksProxy ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
||||||
s << "<tr><td>" << "SAM" << "</td><td><div class='" << ((i2p::client::context.GetSAMBridge ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
s << "<tr><td>" << "BOB" << "</td><td><div class='" << ((i2p::client::context.GetBOBCommandChannel ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
||||||
s << "<tr><td>" << "I2CP" << "</td><td><div class='" << ((i2p::client::context.GetI2CPServer ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
s << "<tr><td>" << "SAM" << "</td><td><div class='" << ((i2p::client::context.GetSAMBridge ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
||||||
bool i2pcontrol; i2p::config::GetOption("i2pcontrol.enabled", i2pcontrol);
|
s << "<tr><td>" << "I2CP" << "</td><td><div class='" << ((i2p::client::context.GetI2CPServer ()) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
||||||
s << "<tr><td>" << "I2PControl" << "</td><td><div class='" << ((i2pcontrol) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
bool i2pcontrol; i2p::config::GetOption("i2pcontrol.enabled", i2pcontrol);
|
||||||
s << "</table>\r\n";
|
s << "<tr><td>" << "I2PControl" << "</td><td><div class='" << ((i2pcontrol) ? "enabled" : "disabled") << "'></div></td></tr>\r\n";
|
||||||
|
s << "</table>\r\n";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ShowLocalDestinations (std::stringstream& s)
|
void ShowLocalDestinations (std::stringstream& s)
|
||||||
@ -863,7 +874,7 @@ namespace http {
|
|||||||
} else if (req.uri.find("cmd=") != std::string::npos) {
|
} else if (req.uri.find("cmd=") != std::string::npos) {
|
||||||
HandleCommand (req, res, s);
|
HandleCommand (req, res, s);
|
||||||
} else {
|
} else {
|
||||||
ShowStatus (s, true);
|
ShowStatus (s, true, i2p::http::OutputFormatEnum::forWebConsole);
|
||||||
res.add_header("Refresh", "10");
|
res.add_header("Refresh", "10");
|
||||||
}
|
}
|
||||||
ShowPageTail (s);
|
ShowPageTail (s);
|
||||||
|
@ -80,7 +80,8 @@ namespace http
|
|||||||
};
|
};
|
||||||
|
|
||||||
//all the below functions are also used by Qt GUI, see mainwindow.cpp -> getStatusPageHtml
|
//all the below functions are also used by Qt GUI, see mainwindow.cpp -> getStatusPageHtml
|
||||||
void ShowStatus (std::stringstream& s, bool includeHiddenContent);
|
enum OutputFormatEnum { forWebConsole, forQtUi };
|
||||||
|
void ShowStatus (std::stringstream& s, bool includeHiddenContent, OutputFormatEnum outputFormat);
|
||||||
void ShowLocalDestinations (std::stringstream& s);
|
void ShowLocalDestinations (std::stringstream& s);
|
||||||
void ShowLeasesSets(std::stringstream& s);
|
void ShowLeasesSets(std::stringstream& s);
|
||||||
void ShowTunnels (std::stringstream& s);
|
void ShowTunnels (std::stringstream& s);
|
||||||
|
@ -1,308 +1,310 @@
|
|||||||
QT += core gui
|
QT += core gui
|
||||||
|
|
||||||
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
||||||
|
|
||||||
TARGET = i2pd_qt
|
TARGET = i2pd_qt
|
||||||
TEMPLATE = app
|
TEMPLATE = app
|
||||||
QMAKE_CXXFLAGS *= -std=c++11
|
QMAKE_CXXFLAGS *= -std=c++11
|
||||||
DEFINES += USE_UPNP
|
DEFINES += USE_UPNP
|
||||||
|
|
||||||
# change to your own path, where you will store all needed libraries with 'git clone' commands below.
|
# change to your own path, where you will store all needed libraries with 'git clone' commands below.
|
||||||
MAIN_PATH = /path/to/libraries
|
MAIN_PATH = /path/to/libraries
|
||||||
|
|
||||||
# git clone https://github.com/PurpleI2P/Boost-for-Android-Prebuilt.git
|
# git clone https://github.com/PurpleI2P/Boost-for-Android-Prebuilt.git
|
||||||
# git clone https://github.com/PurpleI2P/OpenSSL-for-Android-Prebuilt.git
|
# git clone https://github.com/PurpleI2P/OpenSSL-for-Android-Prebuilt.git
|
||||||
# git clone https://github.com/PurpleI2P/MiniUPnP-for-Android-Prebuilt.git
|
# git clone https://github.com/PurpleI2P/MiniUPnP-for-Android-Prebuilt.git
|
||||||
# git clone https://github.com/PurpleI2P/android-ifaddrs.git
|
# git clone https://github.com/PurpleI2P/android-ifaddrs.git
|
||||||
BOOST_PATH = $$MAIN_PATH/Boost-for-Android-Prebuilt
|
BOOST_PATH = $$MAIN_PATH/Boost-for-Android-Prebuilt
|
||||||
OPENSSL_PATH = $$MAIN_PATH/OpenSSL-for-Android-Prebuilt
|
OPENSSL_PATH = $$MAIN_PATH/OpenSSL-for-Android-Prebuilt
|
||||||
MINIUPNP_PATH = $$MAIN_PATH/MiniUPnP-for-Android-Prebuilt
|
MINIUPNP_PATH = $$MAIN_PATH/MiniUPnP-for-Android-Prebuilt
|
||||||
IFADDRS_PATH = $$MAIN_PATH/android-ifaddrs
|
IFADDRS_PATH = $$MAIN_PATH/android-ifaddrs
|
||||||
|
|
||||||
# Steps in Android SDK manager:
|
# Steps in Android SDK manager:
|
||||||
# 1) Check Extras/Google Support Library https://developer.android.com/topic/libraries/support-library/setup.html
|
# 1) Check Extras/Google Support Library https://developer.android.com/topic/libraries/support-library/setup.html
|
||||||
# 2) Check API 11
|
# 2) Check API 11
|
||||||
# Finally, click Install.
|
# Finally, click Install.
|
||||||
|
|
||||||
SOURCES += DaemonQT.cpp mainwindow.cpp \
|
SOURCES += DaemonQT.cpp mainwindow.cpp \
|
||||||
../../libi2pd/api.cpp \
|
../../libi2pd/api.cpp \
|
||||||
../../libi2pd/Base.cpp \
|
../../libi2pd/Base.cpp \
|
||||||
../../libi2pd/BloomFilter.cpp \
|
../../libi2pd/BloomFilter.cpp \
|
||||||
../../libi2pd/Config.cpp \
|
../../libi2pd/Config.cpp \
|
||||||
../../libi2pd/CPU.cpp \
|
../../libi2pd/CPU.cpp \
|
||||||
../../libi2pd/Crypto.cpp \
|
../../libi2pd/Crypto.cpp \
|
||||||
../../libi2pd/CryptoKey.cpp \
|
../../libi2pd/CryptoKey.cpp \
|
||||||
../../libi2pd/Datagram.cpp \
|
../../libi2pd/Datagram.cpp \
|
||||||
../../libi2pd/Destination.cpp \
|
../../libi2pd/Destination.cpp \
|
||||||
../../libi2pd/Event.cpp \
|
../../libi2pd/Event.cpp \
|
||||||
../../libi2pd/Family.cpp \
|
../../libi2pd/Family.cpp \
|
||||||
../../libi2pd/FS.cpp \
|
../../libi2pd/FS.cpp \
|
||||||
../../libi2pd/Garlic.cpp \
|
../../libi2pd/Garlic.cpp \
|
||||||
../../libi2pd/Gost.cpp \
|
../../libi2pd/Gost.cpp \
|
||||||
../../libi2pd/Gzip.cpp \
|
../../libi2pd/Gzip.cpp \
|
||||||
../../libi2pd/HTTP.cpp \
|
../../libi2pd/HTTP.cpp \
|
||||||
../../libi2pd/I2NPProtocol.cpp \
|
../../libi2pd/I2NPProtocol.cpp \
|
||||||
../../libi2pd/I2PEndian.cpp \
|
../../libi2pd/I2PEndian.cpp \
|
||||||
../../libi2pd/Identity.cpp \
|
../../libi2pd/Identity.cpp \
|
||||||
../../libi2pd/LeaseSet.cpp \
|
../../libi2pd/LeaseSet.cpp \
|
||||||
../../libi2pd/Log.cpp \
|
../../libi2pd/Log.cpp \
|
||||||
../../libi2pd/NetDb.cpp \
|
../../libi2pd/NetDb.cpp \
|
||||||
../../libi2pd/NetDbRequests.cpp \
|
../../libi2pd/NetDbRequests.cpp \
|
||||||
../../libi2pd/NTCPSession.cpp \
|
../../libi2pd/NTCPSession.cpp \
|
||||||
../../libi2pd/Profiling.cpp \
|
../../libi2pd/Profiling.cpp \
|
||||||
../../libi2pd/Reseed.cpp \
|
../../libi2pd/Reseed.cpp \
|
||||||
../../libi2pd/RouterContext.cpp \
|
../../libi2pd/RouterContext.cpp \
|
||||||
../../libi2pd/RouterInfo.cpp \
|
../../libi2pd/RouterInfo.cpp \
|
||||||
../../libi2pd/Signature.cpp \
|
../../libi2pd/Signature.cpp \
|
||||||
../../libi2pd/SSU.cpp \
|
../../libi2pd/SSU.cpp \
|
||||||
../../libi2pd/SSUData.cpp \
|
../../libi2pd/SSUData.cpp \
|
||||||
../../libi2pd/SSUSession.cpp \
|
../../libi2pd/SSUSession.cpp \
|
||||||
../../libi2pd/Streaming.cpp \
|
../../libi2pd/Streaming.cpp \
|
||||||
../../libi2pd/Timestamp.cpp \
|
../../libi2pd/Timestamp.cpp \
|
||||||
../../libi2pd/TransitTunnel.cpp \
|
../../libi2pd/TransitTunnel.cpp \
|
||||||
../../libi2pd/Transports.cpp \
|
../../libi2pd/Transports.cpp \
|
||||||
../../libi2pd/Tunnel.cpp \
|
../../libi2pd/Tunnel.cpp \
|
||||||
../../libi2pd/TunnelEndpoint.cpp \
|
../../libi2pd/TunnelEndpoint.cpp \
|
||||||
../../libi2pd/TunnelGateway.cpp \
|
../../libi2pd/TunnelGateway.cpp \
|
||||||
../../libi2pd/TunnelPool.cpp \
|
../../libi2pd/TunnelPool.cpp \
|
||||||
../../libi2pd/util.cpp \
|
../../libi2pd/util.cpp \
|
||||||
../../libi2pd_client/AddressBook.cpp \
|
../../libi2pd_client/AddressBook.cpp \
|
||||||
../../libi2pd_client/BOB.cpp \
|
../../libi2pd_client/BOB.cpp \
|
||||||
../../libi2pd_client/ClientContext.cpp \
|
../../libi2pd_client/ClientContext.cpp \
|
||||||
../../libi2pd_client/HTTPProxy.cpp \
|
../../libi2pd_client/HTTPProxy.cpp \
|
||||||
../../libi2pd_client/I2CP.cpp \
|
../../libi2pd_client/I2CP.cpp \
|
||||||
../../libi2pd_client/I2PService.cpp \
|
../../libi2pd_client/I2PService.cpp \
|
||||||
../../libi2pd_client/I2PTunnel.cpp \
|
../../libi2pd_client/I2PTunnel.cpp \
|
||||||
../../libi2pd_client/MatchedDestination.cpp \
|
../../libi2pd_client/MatchedDestination.cpp \
|
||||||
../../libi2pd_client/SAM.cpp \
|
../../libi2pd_client/SAM.cpp \
|
||||||
../../libi2pd_client/SOCKS.cpp \
|
../../libi2pd_client/SOCKS.cpp \
|
||||||
../../libi2pd_client/Websocket.cpp \
|
../../libi2pd_client/Websocket.cpp \
|
||||||
../../libi2pd_client/WebSocks.cpp \
|
../../libi2pd_client/WebSocks.cpp \
|
||||||
ClientTunnelPane.cpp \
|
ClientTunnelPane.cpp \
|
||||||
MainWindowItems.cpp \
|
MainWindowItems.cpp \
|
||||||
ServerTunnelPane.cpp \
|
ServerTunnelPane.cpp \
|
||||||
SignatureTypeComboboxFactory.cpp \
|
SignatureTypeComboboxFactory.cpp \
|
||||||
TunnelConfig.cpp \
|
TunnelConfig.cpp \
|
||||||
TunnelPane.cpp \
|
TunnelPane.cpp \
|
||||||
../../daemon/Daemon.cpp \
|
../../daemon/Daemon.cpp \
|
||||||
../../daemon/HTTPServer.cpp \
|
../../daemon/HTTPServer.cpp \
|
||||||
../../daemon/i2pd.cpp \
|
../../daemon/i2pd.cpp \
|
||||||
../../daemon/I2PControl.cpp \
|
../../daemon/I2PControl.cpp \
|
||||||
../../daemon/UnixDaemon.cpp \
|
../../daemon/UnixDaemon.cpp \
|
||||||
../../daemon/UPnP.cpp \
|
../../daemon/UPnP.cpp \
|
||||||
textbrowsertweaked1.cpp \
|
textbrowsertweaked1.cpp \
|
||||||
pagewithbackbutton.cpp \
|
pagewithbackbutton.cpp \
|
||||||
widgetlock.cpp \
|
widgetlock.cpp \
|
||||||
widgetlockregistry.cpp
|
widgetlockregistry.cpp
|
||||||
|
|
||||||
#qt creator does not handle this well
|
#qt creator does not handle this well
|
||||||
#SOURCES += $$files(../../libi2pd/*.cpp)
|
#SOURCES += $$files(../../libi2pd/*.cpp)
|
||||||
#SOURCES += $$files(../../libi2pd_client/*.cpp)
|
#SOURCES += $$files(../../libi2pd_client/*.cpp)
|
||||||
#SOURCES += $$files(../../daemon/*.cpp)
|
#SOURCES += $$files(../../daemon/*.cpp)
|
||||||
#SOURCES += $$files(./*.cpp)
|
#SOURCES += $$files(./*.cpp)
|
||||||
|
|
||||||
SOURCES -= ../../daemon/UnixDaemon.cpp
|
SOURCES -= ../../daemon/UnixDaemon.cpp
|
||||||
|
|
||||||
HEADERS += DaemonQT.h mainwindow.h \
|
HEADERS += DaemonQT.h mainwindow.h \
|
||||||
../../libi2pd/api.h \
|
../../libi2pd/api.h \
|
||||||
../../libi2pd/Base.h \
|
../../libi2pd/Base.h \
|
||||||
../../libi2pd/BloomFilter.h \
|
../../libi2pd/BloomFilter.h \
|
||||||
../../libi2pd/Config.h \
|
../../libi2pd/Config.h \
|
||||||
../../libi2pd/Crypto.h \
|
../../libi2pd/Crypto.h \
|
||||||
../../libi2pd/CryptoKey.h \
|
../../libi2pd/CryptoKey.h \
|
||||||
../../libi2pd/Datagram.h \
|
../../libi2pd/Datagram.h \
|
||||||
../../libi2pd/Destination.h \
|
../../libi2pd/Destination.h \
|
||||||
../../libi2pd/Event.h \
|
../../libi2pd/Event.h \
|
||||||
../../libi2pd/Family.h \
|
../../libi2pd/Family.h \
|
||||||
../../libi2pd/FS.h \
|
../../libi2pd/FS.h \
|
||||||
../../libi2pd/Garlic.h \
|
../../libi2pd/Garlic.h \
|
||||||
../../libi2pd/Gost.h \
|
../../libi2pd/Gost.h \
|
||||||
../../libi2pd/Gzip.h \
|
../../libi2pd/Gzip.h \
|
||||||
../../libi2pd/HTTP.h \
|
../../libi2pd/HTTP.h \
|
||||||
../../libi2pd/I2NPProtocol.h \
|
../../libi2pd/I2NPProtocol.h \
|
||||||
../../libi2pd/I2PEndian.h \
|
../../libi2pd/I2PEndian.h \
|
||||||
../../libi2pd/Identity.h \
|
../../libi2pd/Identity.h \
|
||||||
../../libi2pd/LeaseSet.h \
|
../../libi2pd/LeaseSet.h \
|
||||||
../../libi2pd/LittleBigEndian.h \
|
../../libi2pd/LittleBigEndian.h \
|
||||||
../../libi2pd/Log.h \
|
../../libi2pd/Log.h \
|
||||||
../../libi2pd/NetDb.hpp \
|
../../libi2pd/NetDb.hpp \
|
||||||
../../libi2pd/NetDbRequests.h \
|
../../libi2pd/NetDbRequests.h \
|
||||||
../../libi2pd/NTCPSession.h \
|
../../libi2pd/NTCPSession.h \
|
||||||
../../libi2pd/Profiling.h \
|
../../libi2pd/Profiling.h \
|
||||||
../../libi2pd/Queue.h \
|
../../libi2pd/Queue.h \
|
||||||
../../libi2pd/Reseed.h \
|
../../libi2pd/Reseed.h \
|
||||||
../../libi2pd/RouterContext.h \
|
../../libi2pd/RouterContext.h \
|
||||||
../../libi2pd/RouterInfo.h \
|
../../libi2pd/RouterInfo.h \
|
||||||
../../libi2pd/Signature.h \
|
../../libi2pd/Signature.h \
|
||||||
../../libi2pd/SSU.h \
|
../../libi2pd/SSU.h \
|
||||||
../../libi2pd/SSUData.h \
|
../../libi2pd/SSUData.h \
|
||||||
../../libi2pd/SSUSession.h \
|
../../libi2pd/SSUSession.h \
|
||||||
../../libi2pd/Streaming.h \
|
../../libi2pd/Streaming.h \
|
||||||
../../libi2pd/Tag.h \
|
../../libi2pd/Tag.h \
|
||||||
../../libi2pd/Timestamp.h \
|
../../libi2pd/Timestamp.h \
|
||||||
../../libi2pd/TransitTunnel.h \
|
../../libi2pd/TransitTunnel.h \
|
||||||
../../libi2pd/Transports.h \
|
../../libi2pd/Transports.h \
|
||||||
../../libi2pd/TransportSession.h \
|
../../libi2pd/TransportSession.h \
|
||||||
../../libi2pd/Tunnel.h \
|
../../libi2pd/Tunnel.h \
|
||||||
../../libi2pd/TunnelBase.h \
|
../../libi2pd/TunnelBase.h \
|
||||||
../../libi2pd/TunnelConfig.h \
|
../../libi2pd/TunnelConfig.h \
|
||||||
../../libi2pd/TunnelEndpoint.h \
|
../../libi2pd/TunnelEndpoint.h \
|
||||||
../../libi2pd/TunnelGateway.h \
|
../../libi2pd/TunnelGateway.h \
|
||||||
../../libi2pd/TunnelPool.h \
|
../../libi2pd/TunnelPool.h \
|
||||||
../../libi2pd/util.h \
|
../../libi2pd/util.h \
|
||||||
../../libi2pd/version.h \
|
../../libi2pd/version.h \
|
||||||
../../libi2pd_client/AddressBook.h \
|
../../libi2pd_client/AddressBook.h \
|
||||||
../../libi2pd_client/BOB.h \
|
../../libi2pd_client/BOB.h \
|
||||||
../../libi2pd_client/ClientContext.h \
|
../../libi2pd_client/ClientContext.h \
|
||||||
../../libi2pd_client/HTTPProxy.h \
|
../../libi2pd_client/HTTPProxy.h \
|
||||||
../../libi2pd_client/I2CP.h \
|
../../libi2pd_client/I2CP.h \
|
||||||
../../libi2pd_client/I2PService.h \
|
../../libi2pd_client/I2PService.h \
|
||||||
../../libi2pd_client/I2PTunnel.h \
|
../../libi2pd_client/I2PTunnel.h \
|
||||||
../../libi2pd_client/MatchedDestination.h \
|
../../libi2pd_client/MatchedDestination.h \
|
||||||
../../libi2pd_client/SAM.h \
|
../../libi2pd_client/SAM.h \
|
||||||
../../libi2pd_client/SOCKS.h \
|
../../libi2pd_client/SOCKS.h \
|
||||||
../../libi2pd_client/Websocket.h \
|
../../libi2pd_client/Websocket.h \
|
||||||
../../libi2pd_client/WebSocks.h \
|
../../libi2pd_client/WebSocks.h \
|
||||||
ClientTunnelPane.h \
|
ClientTunnelPane.h \
|
||||||
MainWindowItems.h \
|
MainWindowItems.h \
|
||||||
ServerTunnelPane.h \
|
ServerTunnelPane.h \
|
||||||
SignatureTypeComboboxFactory.h \
|
SignatureTypeComboboxFactory.h \
|
||||||
TunnelConfig.h \
|
TunnelConfig.h \
|
||||||
TunnelPane.h \
|
TunnelPane.h \
|
||||||
TunnelsPageUpdateListener.h \
|
TunnelsPageUpdateListener.h \
|
||||||
../../daemon/Daemon.h \
|
../../daemon/Daemon.h \
|
||||||
../../daemon/HTTPServer.h \
|
../../daemon/HTTPServer.h \
|
||||||
../../daemon/I2PControl.h \
|
../../daemon/I2PControl.h \
|
||||||
../../daemon/UPnP.h \
|
../../daemon/UPnP.h \
|
||||||
textbrowsertweaked1.h \
|
textbrowsertweaked1.h \
|
||||||
pagewithbackbutton.h \
|
pagewithbackbutton.h \
|
||||||
widgetlock.h \
|
widgetlock.h \
|
||||||
widgetlockregistry.h
|
widgetlockregistry.h \
|
||||||
|
i2pd.rc \
|
||||||
INCLUDEPATH += ../../libi2pd
|
i2pd.rc
|
||||||
INCLUDEPATH += ../../libi2pd_client
|
|
||||||
INCLUDEPATH += ../../daemon
|
INCLUDEPATH += ../../libi2pd
|
||||||
INCLUDEPATH += .
|
INCLUDEPATH += ../../libi2pd_client
|
||||||
|
INCLUDEPATH += ../../daemon
|
||||||
FORMS += mainwindow.ui \
|
INCLUDEPATH += .
|
||||||
tunnelform.ui \
|
|
||||||
statusbuttons.ui \
|
FORMS += mainwindow.ui \
|
||||||
routercommandswidget.ui \
|
tunnelform.ui \
|
||||||
generalsettingswidget.ui
|
statusbuttons.ui \
|
||||||
|
routercommandswidget.ui \
|
||||||
LIBS += -lz
|
generalsettingswidget.ui
|
||||||
|
|
||||||
macx {
|
LIBS += -lz
|
||||||
message("using mac os x target")
|
|
||||||
BREWROOT=/usr/local
|
macx {
|
||||||
BOOSTROOT=$$BREWROOT/opt/boost
|
message("using mac os x target")
|
||||||
SSLROOT=$$BREWROOT/opt/libressl
|
BREWROOT=/usr/local
|
||||||
UPNPROOT=$$BREWROOT/opt/miniupnpc
|
BOOSTROOT=$$BREWROOT/opt/boost
|
||||||
INCLUDEPATH += $$BOOSTROOT/include
|
SSLROOT=$$BREWROOT/opt/libressl
|
||||||
INCLUDEPATH += $$SSLROOT/include
|
UPNPROOT=$$BREWROOT/opt/miniupnpc
|
||||||
INCLUDEPATH += $$UPNPROOT/include
|
INCLUDEPATH += $$BOOSTROOT/include
|
||||||
LIBS += $$SSLROOT/lib/libcrypto.a
|
INCLUDEPATH += $$SSLROOT/include
|
||||||
LIBS += $$SSLROOT/lib/libssl.a
|
INCLUDEPATH += $$UPNPROOT/include
|
||||||
LIBS += $$BOOSTROOT/lib/libboost_system.a
|
LIBS += $$SSLROOT/lib/libcrypto.a
|
||||||
LIBS += $$BOOSTROOT/lib/libboost_date_time.a
|
LIBS += $$SSLROOT/lib/libssl.a
|
||||||
LIBS += $$BOOSTROOT/lib/libboost_filesystem.a
|
LIBS += $$BOOSTROOT/lib/libboost_system.a
|
||||||
LIBS += $$BOOSTROOT/lib/libboost_program_options.a
|
LIBS += $$BOOSTROOT/lib/libboost_date_time.a
|
||||||
LIBS += $$UPNPROOT/lib/libminiupnpc.a
|
LIBS += $$BOOSTROOT/lib/libboost_filesystem.a
|
||||||
}
|
LIBS += $$BOOSTROOT/lib/libboost_program_options.a
|
||||||
|
LIBS += $$UPNPROOT/lib/libminiupnpc.a
|
||||||
android {
|
}
|
||||||
message("Using Android settings")
|
|
||||||
DEFINES += ANDROID=1
|
android {
|
||||||
DEFINES += __ANDROID__
|
message("Using Android settings")
|
||||||
|
DEFINES += ANDROID=1
|
||||||
CONFIG += mobility
|
DEFINES += __ANDROID__
|
||||||
|
|
||||||
MOBILITY =
|
CONFIG += mobility
|
||||||
|
|
||||||
INCLUDEPATH += $$BOOST_PATH/boost_1_53_0/include \
|
MOBILITY =
|
||||||
$$OPENSSL_PATH/openssl-1.0.2/include \
|
|
||||||
$$MINIUPNP_PATH/miniupnp-2.0/include \
|
INCLUDEPATH += $$BOOST_PATH/boost_1_53_0/include \
|
||||||
$$IFADDRS_PATH
|
$$OPENSSL_PATH/openssl-1.0.2/include \
|
||||||
DISTFILES += android/AndroidManifest.xml
|
$$MINIUPNP_PATH/miniupnp-2.0/include \
|
||||||
|
$$IFADDRS_PATH
|
||||||
ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android
|
DISTFILES += android/AndroidManifest.xml
|
||||||
|
|
||||||
SOURCES += $$IFADDRS_PATH/ifaddrs.c
|
ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android
|
||||||
HEADERS += $$IFADDRS_PATH/ifaddrs.h
|
|
||||||
|
SOURCES += $$IFADDRS_PATH/ifaddrs.c
|
||||||
equals(ANDROID_TARGET_ARCH, armeabi-v7a){
|
HEADERS += $$IFADDRS_PATH/ifaddrs.h
|
||||||
DEFINES += ANDROID_ARM7A
|
|
||||||
# http://stackoverflow.com/a/30235934/529442
|
equals(ANDROID_TARGET_ARCH, armeabi-v7a){
|
||||||
LIBS += -L$$BOOST_PATH/boost_1_53_0/armeabi-v7a/lib \
|
DEFINES += ANDROID_ARM7A
|
||||||
-lboost_system-gcc-mt-1_53 -lboost_date_time-gcc-mt-1_53 \
|
# http://stackoverflow.com/a/30235934/529442
|
||||||
-lboost_filesystem-gcc-mt-1_53 -lboost_program_options-gcc-mt-1_53 \
|
LIBS += -L$$BOOST_PATH/boost_1_53_0/armeabi-v7a/lib \
|
||||||
-L$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/ -lcrypto -lssl \
|
-lboost_system-gcc-mt-1_53 -lboost_date_time-gcc-mt-1_53 \
|
||||||
-L$$MINIUPNP_PATH/miniupnp-2.0/armeabi-v7a/lib/ -lminiupnpc
|
-lboost_filesystem-gcc-mt-1_53 -lboost_program_options-gcc-mt-1_53 \
|
||||||
|
-L$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/ -lcrypto -lssl \
|
||||||
PRE_TARGETDEPS += $$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libcrypto.a \
|
-L$$MINIUPNP_PATH/miniupnp-2.0/armeabi-v7a/lib/ -lminiupnpc
|
||||||
$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libssl.a
|
|
||||||
DEPENDPATH += $$OPENSSL_PATH/openssl-1.0.2/include
|
PRE_TARGETDEPS += $$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libcrypto.a \
|
||||||
|
$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libssl.a
|
||||||
ANDROID_EXTRA_LIBS += $$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libcrypto_1_0_0.so \
|
DEPENDPATH += $$OPENSSL_PATH/openssl-1.0.2/include
|
||||||
$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libssl_1_0_0.so \
|
|
||||||
$$MINIUPNP_PATH/miniupnp-2.0/armeabi-v7a/lib/libminiupnpc.so
|
ANDROID_EXTRA_LIBS += $$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libcrypto_1_0_0.so \
|
||||||
}
|
$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libssl_1_0_0.so \
|
||||||
|
$$MINIUPNP_PATH/miniupnp-2.0/armeabi-v7a/lib/libminiupnpc.so
|
||||||
equals(ANDROID_TARGET_ARCH, x86){
|
}
|
||||||
# http://stackoverflow.com/a/30235934/529442
|
|
||||||
LIBS += -L$$BOOST_PATH/boost_1_53_0/x86/lib \
|
equals(ANDROID_TARGET_ARCH, x86){
|
||||||
-lboost_system-gcc-mt-1_53 -lboost_date_time-gcc-mt-1_53 \
|
# http://stackoverflow.com/a/30235934/529442
|
||||||
-lboost_filesystem-gcc-mt-1_53 -lboost_program_options-gcc-mt-1_53 \
|
LIBS += -L$$BOOST_PATH/boost_1_53_0/x86/lib \
|
||||||
-L$$OPENSSL_PATH/openssl-1.0.2/x86/lib/ -lcrypto -lssl \
|
-lboost_system-gcc-mt-1_53 -lboost_date_time-gcc-mt-1_53 \
|
||||||
-L$$MINIUPNP_PATH/miniupnp-2.0/x86/lib/ -lminiupnpc
|
-lboost_filesystem-gcc-mt-1_53 -lboost_program_options-gcc-mt-1_53 \
|
||||||
|
-L$$OPENSSL_PATH/openssl-1.0.2/x86/lib/ -lcrypto -lssl \
|
||||||
PRE_TARGETDEPS += $$OPENSSL_PATH/openssl-1.0.2/x86/lib/libcrypto.a \
|
-L$$MINIUPNP_PATH/miniupnp-2.0/x86/lib/ -lminiupnpc
|
||||||
$$OPENSSL_PATH/openssl-1.0.2/x86/lib/libssl.a
|
|
||||||
|
PRE_TARGETDEPS += $$OPENSSL_PATH/openssl-1.0.2/x86/lib/libcrypto.a \
|
||||||
DEPENDPATH += $$OPENSSL_PATH/openssl-1.0.2/include
|
$$OPENSSL_PATH/openssl-1.0.2/x86/lib/libssl.a
|
||||||
|
|
||||||
ANDROID_EXTRA_LIBS += $$OPENSSL_PATH/openssl-1.0.2/x86/lib/libcrypto_1_0_0.so \
|
DEPENDPATH += $$OPENSSL_PATH/openssl-1.0.2/include
|
||||||
$$OPENSSL_PATH/openssl-1.0.2/x86/lib/libssl_1_0_0.so \
|
|
||||||
$$MINIUPNP_PATH/miniupnp-2.0/x86/lib/libminiupnpc.so
|
ANDROID_EXTRA_LIBS += $$OPENSSL_PATH/openssl-1.0.2/x86/lib/libcrypto_1_0_0.so \
|
||||||
}
|
$$OPENSSL_PATH/openssl-1.0.2/x86/lib/libssl_1_0_0.so \
|
||||||
}
|
$$MINIUPNP_PATH/miniupnp-2.0/x86/lib/libminiupnpc.so
|
||||||
|
}
|
||||||
linux:!android {
|
}
|
||||||
message("Using Linux settings")
|
|
||||||
LIBS += -lcrypto -lssl -lboost_system -lboost_date_time -lboost_filesystem -lboost_program_options -lpthread -lminiupnpc
|
linux:!android {
|
||||||
}
|
message("Using Linux settings")
|
||||||
|
LIBS += -lcrypto -lssl -lboost_system -lboost_date_time -lboost_filesystem -lboost_program_options -lpthread -lminiupnpc
|
||||||
windows {
|
}
|
||||||
message("Using Windows settings")
|
|
||||||
RC_FILE = i2pd.rc
|
windows {
|
||||||
DEFINES += BOOST_USE_WINDOWS_H WINDOWS _WINDOWS WIN32_LEAN_AND_MEAN MINIUPNP_STATICLIB
|
message("Using Windows settings")
|
||||||
DEFINES -= UNICODE _UNICODE
|
RC_FILE = i2pd.rc
|
||||||
BOOST_SUFFIX = -mt
|
DEFINES += BOOST_USE_WINDOWS_H WINDOWS _WINDOWS WIN32_LEAN_AND_MEAN MINIUPNP_STATICLIB
|
||||||
QMAKE_CXXFLAGS = -Os
|
DEFINES -= UNICODE _UNICODE
|
||||||
QMAKE_LFLAGS = -s -Wl,-Bstatic -static-libgcc -static-libstdc++ -mwindows
|
BOOST_SUFFIX = -mt
|
||||||
|
QMAKE_CXXFLAGS = -Os
|
||||||
LIBS = -lminiupnpc \
|
QMAKE_LFLAGS = -s -Wl,-Bstatic -static-libgcc -static-libstdc++ -mwindows
|
||||||
-lboost_system$$BOOST_SUFFIX \
|
|
||||||
-lboost_date_time$$BOOST_SUFFIX \
|
LIBS = -lminiupnpc \
|
||||||
-lboost_filesystem$$BOOST_SUFFIX \
|
-lboost_system$$BOOST_SUFFIX \
|
||||||
-lboost_program_options$$BOOST_SUFFIX \
|
-lboost_date_time$$BOOST_SUFFIX \
|
||||||
-lssl \
|
-lboost_filesystem$$BOOST_SUFFIX \
|
||||||
-lcrypto \
|
-lboost_program_options$$BOOST_SUFFIX \
|
||||||
-lz \
|
-lssl \
|
||||||
-lwsock32 \
|
-lcrypto \
|
||||||
-lws2_32 \
|
-lz \
|
||||||
-lgdi32 \
|
-lwsock32 \
|
||||||
-liphlpapi \
|
-lws2_32 \
|
||||||
-lstdc++ \
|
-lgdi32 \
|
||||||
-lpthread
|
-liphlpapi \
|
||||||
}
|
-lstdc++ \
|
||||||
|
-lpthread
|
||||||
!android:!symbian:!maemo5:!simulator {
|
}
|
||||||
message("Build with a system tray icon")
|
|
||||||
# see also http://doc.qt.io/qt-4.8/qt-desktop-systray-systray-pro.html for example on wince*
|
!android:!symbian:!maemo5:!simulator {
|
||||||
#sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS i2pd_qt.pro resources images
|
message("Build with a system tray icon")
|
||||||
RESOURCES = i2pd.qrc
|
# see also http://doc.qt.io/qt-4.8/qt-desktop-systray-systray-pro.html for example on wince*
|
||||||
QT += xml
|
#sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS i2pd_qt.pro resources images
|
||||||
#INSTALLS += sources
|
RESOURCES = i2pd.qrc
|
||||||
}
|
QT += xml
|
||||||
|
#INSTALLS += sources
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -349,7 +349,9 @@ QString MainWindow::getStatusPageHtml(bool showHiddenInfo) {
|
|||||||
s << "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">";
|
s << "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">";
|
||||||
|
|
||||||
switch (statusPage) {
|
switch (statusPage) {
|
||||||
case main_page: i2p::http::ShowStatus(s, showHiddenInfo);break;
|
case main_page:
|
||||||
|
i2p::http::ShowStatus(s, showHiddenInfo, i2p::http::OutputFormatEnum::forQtUi);
|
||||||
|
break;
|
||||||
case commands: break;
|
case commands: break;
|
||||||
case local_destinations: i2p::http::ShowLocalDestinations(s);break;
|
case local_destinations: i2p::http::ShowLocalDestinations(s);break;
|
||||||
case leasesets: i2p::http::ShowLeasesSets(s); break;
|
case leasesets: i2p::http::ShowLeasesSets(s); break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user