Bug 42343: Read built-in bridges from pt_config.json instead of preferences.
Merge Info
Related Issues
- #42343 (closed)
- mullvad-browser#xxxxx
- tor-browser-build#xxxxx
Backporting
Timeline
-
Immediate: patchset needed as soon as possible -
Next Minor Stable Release: patchset that needs to be verified in nightly before backport -
Eventually: patchset that needs to be verified in alpha before backport -
No Backport (preferred): patchset for the next major stable
(Optional) Justification
-
Emergency security update: patchset fixes CVEs, 0-days, etc -
Censorship event: patchset enables censorship circumvention -
Critical bug-fix: patchset fixes a bug in core-functionality -
Consistency: patchset which would make development easier if it were in both the alpha and release branches; developer tools, build system changes, etc -
Sponsor required: patchset required for sponsor -
Localization: typos and other localization changes that should be also in the release branch -
Other: please explain
Merging
-
Merge to tor-browser
-!fixups
totor-browser
-specific commits, new features, security backports -
Merge to base-browser
-!fixups
tobase-browser
-specific commits, new features to be shared withmullvad-browser
, and security backports-
NOTE: if your changeset includes patches to both
base-browser
andtor-browser
please clearly label in the change description which commits should be cherry-picked tobase-browser
after merging
-
NOTE: if your changeset includes patches to both
Issue Tracking
-
Link resolved issues with appropriate Release Prep issue for changelog generation
Review
Request Reviewer
-
Request review from an applications developer depending on modified system: -
NOTE: if the MR modifies multiple areas, please
/cc
all the relevant reviewers (since gitlab only allows 1 reviewer) - accessibility : henry
- android : clairehurst, dan
- build system : boklm
- extensions : ma1
- firefox internals (XUL/JS/XPCOM) : ma1
- fonts : pierov
- frontend (implementation) : henry
- frontend (review) : donuts, richard
- localization : henry, pierov
- macos : clairehurst, dan
- nightly builds : boklm
- rebases/release-prep : dan, ma1, pierov, richard
- security : ma1
- signing : boklm, richard
- updater : pierov
- misc/other : pierov, richard
-
NOTE: if the MR modifies multiple areas, please
Requesting from Henry because they last changed the TorSettings
module, so it should be still fresh in their mind, but also /cc @richard
Change Description
A while ago we decided to make the pt_config.json
the authoritative file for built-in bridges.
While it's nice, it also involved 30 lines of shell script in tor-browser-build
to transform the JSON file to preferences, and another 30 lines of JS to read an array from preferences.
Reading the JSON in JS is much easier, so we drop both the code to read the prefs, and the build code, which otherwise I would have had to duplicate for Android, now that we're porting the connect assist to it.
How Tested
- Verified we don't have errors when initializing
TorSettings
- Manually called
TorSettings._getBuiltinBridges
andTorSettings.builtinBridgeTypes
- Checked that
TorSettings._getBuiltinBridges("obfs4")
are actually randomized - Checked that setting built-in bridges still works