Skip to content

fixup! Bug 40597: Implement TorSettings module

This is a work-in-progress commit for the remaining s96 work. This commit refactors the TorConnect module and changes the TorConnect state-machine. We have a minimal implementation of 'AutoBootstrap' via TorConnect.beginAutoBootstrap(countryCode) which gets censorship-circumvention settings from BridgeDB and iteratively tries each received settings block until bootstrap is successful, or fails.

You can safely call this function from the Browser Toolbox once the about:torconnect pages loads. Currently, a country-code of "cn" will give you a couple of settings to try (I think w/e Belarus' country-code is will also work). AutoBootstrap will not succeed if you do not provide a country-code (or live in said country) with censorship-circumvention settings.

No AutoBootstrap functionality is accessible from the UI. UX work will come in a later commit.

The existing ordinary Bootstrapping functionality should work the same now as it did prior to these patches.

Also resolves #40598 (closed) by removing the legacy load which is no longer be needed now that we have had a few releases since it was introduced.

We should get this functionality into nightly soon so we can find any issues I have introduced early.

@pierov: would you also take a look at this?

edit: fixes #40662 (closed) as that ticket does not include the UI changes

Edited by richard

Merge request reports