From bdbcadc43cf3aee5f639288984fe8c5755f87418 Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 17 Dec 2021 22:26:32 +0100 Subject: [PATCH] fixed Tor icon to stay red --- libretroshare/src/tor/TorManager.cpp | 12 +++++++++++- libretroshare/src/tor/TorManager.h | 2 +- retroshare-gui/src/gui/statusbar/torstatus.cpp | 5 +++-- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/libretroshare/src/tor/TorManager.cpp b/libretroshare/src/tor/TorManager.cpp index d33075328..dd1c1f810 100644 --- a/libretroshare/src/tor/TorManager.cpp +++ b/libretroshare/src/tor/TorManager.cpp @@ -262,9 +262,19 @@ bool TorManager::setupHiddenService() return true ; } -void TorManager::hiddenServiceStatusChanged(int old_status,int new_status) +void TorManager::hiddenServiceStatusChanged(int new_status,int old_status) { std::cerr << "Hidden service status changed from " << old_status << " to " << new_status << std::endl; + + if(rsEvents) + { + auto ev = std::make_shared(); + ev->mTorManagerEventType = RsTorManagerEventCode::TOR_STATUS_CHANGED; + ev->mTorConnectivityStatus = RsTorConnectivityStatus::HIDDEN_SERVICE_READY; + ev->mTorStatus = RsTorStatus::READY; + + rsEvents->sendEvent(ev); + } } void TorManager::hiddenServicePrivateKeyChanged() diff --git a/libretroshare/src/tor/TorManager.h b/libretroshare/src/tor/TorManager.h index 555192852..c9a5e3769 100644 --- a/libretroshare/src/tor/TorManager.h +++ b/libretroshare/src/tor/TorManager.h @@ -92,7 +92,7 @@ public: virtual void hiddenServiceOnline() override {} // do nothing here. virtual void hiddenServicePrivateKeyChanged() override; virtual void hiddenServiceHostnameChanged() override; - virtual void hiddenServiceStatusChanged(int old_status,int new_status) override; + virtual void hiddenServiceStatusChanged(int new_status, int old_status) override; // Thread stuff diff --git a/retroshare-gui/src/gui/statusbar/torstatus.cpp b/retroshare-gui/src/gui/statusbar/torstatus.cpp index 44de873ae..c141ef0ce 100644 --- a/retroshare-gui/src/gui/statusbar/torstatus.cpp +++ b/retroshare-gui/src/gui/statusbar/torstatus.cpp @@ -104,8 +104,9 @@ void TorStatus::getTorStatus() case RsTorConnectivityStatus::NOT_CONNECTED: tor_control_ok = false ; tor_control_status_str = "Not connected" ; break ; case RsTorConnectivityStatus::CONNECTING: tor_control_ok = false ; tor_control_status_str = "Connecting" ; break ; case RsTorConnectivityStatus::AUTHENTICATING: tor_control_ok = false ; tor_control_status_str = "Authenticating" ; break ; - case RsTorConnectivityStatus::AUTHENTICATED: tor_control_ok = true ; tor_control_status_str = "Connected" ; break ; - } + case RsTorConnectivityStatus::AUTHENTICATED: tor_control_ok = false ; tor_control_status_str = "Connected" ; break ; + case RsTorConnectivityStatus::HIDDEN_SERVICE_READY: tor_control_ok = true ; tor_control_status_str = "Hidden service ready" ; break ; + } switch(torstatus) {