Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Detect when Tor is blocked on the user's network and warn about it #19208

Open
fmarier opened this issue Nov 3, 2021 · 2 comments
Open

Detect when Tor is blocked on the user's network and warn about it #19208

fmarier opened this issue Nov 3, 2021 · 2 comments

Comments

@fmarier
Copy link
Member

fmarier commented Nov 3, 2021

Some users report that their Tor windows don't work and that the Tor daemon is stuck in the Disconnect state without any log messages:

The root cause in this case was the use of OpenDNS with the "Anonymizer/Proxy" blocking enabled.

I can think of three ways to tackle this:

  1. Warn the user when the tor daemon cannot be downloaded for any reason (generic error message).
  2. Make a request (not on the Tor network) to https://tor.bravesoftware.com/ and look for a 200. This requires a small server-side fix first: https://github.com/brave/devops/issues/9329.
  3. Make a request (not on the Tor network) https://www.torproject.org and look for a 200.

I think we should do both #1 and #2 with these errors messages respectively:

  1. "Could not download the required tor component."
  2. "Requests for the tor component appear to be blocked on this network."
@rmcfadden3
Copy link

Per Slack convo w/ @fmarier — the error message copy LGTM!

@fmarier
Copy link
Member Author

fmarier commented Mar 15, 2023

After talking to @boocmp , it turns out that we can't easily tell between these two conditions:

  1. The component is missing from disk because the network blocks it.
  2. The component is missing from disk because it hasn't finished downloading.

He suggested showing a "downloading..." message instead.

So maybe what we should do instead is:

  1. Start by checking for a 200 on tor.bravesoftware.com and return an error message immediately if it fails.
  2. If step 1 succeeded, start downloading with the "Downloading tor daemon..." status message.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants