summaryrefslogtreecommitdiff
path: root/desktop/src/onionshare/tab/mode/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/src/onionshare/tab/mode/__init__.py')
-rw-r--r--desktop/src/onionshare/tab/mode/__init__.py33
1 files changed, 17 insertions, 16 deletions
diff --git a/desktop/src/onionshare/tab/mode/__init__.py b/desktop/src/onionshare/tab/mode/__init__.py
index aeecaf66..d4f2c23a 100644
--- a/desktop/src/onionshare/tab/mode/__init__.py
+++ b/desktop/src/onionshare/tab/mode/__init__.py
@@ -246,13 +246,23 @@ class Mode(QtWidgets.QWidget):
self.start_onion_thread()
def start_onion_thread(self, obtain_onion_early=False):
- self.common.log("Mode", "start_server", "Starting an onion thread")
- self.obtain_onion_early = obtain_onion_early
- self.onion_thread = OnionThread(self)
- self.onion_thread.success.connect(self.starting_server_step2.emit)
- self.onion_thread.success_early.connect(self.starting_server_early.emit)
- self.onion_thread.error.connect(self.starting_server_error.emit)
- self.onion_thread.start()
+ # If we tried to start with Client Auth and our Tor is too old to support it,
+ # bail out early
+ if (
+ not self.server_status.local_only
+ and not self.app.onion.supports_stealth
+ and not self.settings.get("general", "public")
+ ):
+ self.stop_server()
+ self.start_server_error(strings._("gui_server_doesnt_support_stealth"))
+ else:
+ self.common.log("Mode", "start_server", "Starting an onion thread")
+ self.obtain_onion_early = obtain_onion_early
+ self.onion_thread = OnionThread(self)
+ self.onion_thread.success.connect(self.starting_server_step2.emit)
+ self.onion_thread.success_early.connect(self.starting_server_early.emit)
+ self.onion_thread.error.connect(self.starting_server_error.emit)
+ self.onion_thread.start()
def start_scheduled_service(self, obtain_onion_early=False):
# We start a new OnionThread with the saved scheduled key from settings
@@ -438,15 +448,6 @@ class Mode(QtWidgets.QWidget):
"""
pass
- def handle_request_rate_limit(self, event):
- """
- Handle REQUEST_RATE_LIMIT event.
- """
- self.stop_server()
- Alert(
- self.common, strings._("error_rate_limit"), QtWidgets.QMessageBox.Critical
- )
-
def handle_request_progress(self, event):
"""
Handle REQUEST_PROGRESS event.