[tor-commits] [Git][tpo/applications/android-components][android-components-60.0.3-10.0-1] 2 commits: Bug 40022: Migrate Tor security level from Fennec
Matthew Finkel
gitlab at torproject.org
Wed Oct 21 22:10:54 UTC 2020
Matthew Finkel pushed to branch android-components-60.0.3-10.0-1 at The Tor Project / Applications / android-components
Commits:
9eb30f13 by Alex Catarineu at 2020-10-21T22:15:39+02:00
Bug 40022: Migrate Tor security level from Fennec
- - - - -
6b75c81e by Matthew Finkel at 2020-10-21T22:09:37+00:00
Merge remote-tracking branch 'acatgl/40022' into android-components-60.0.3-10.0-1
- - - - -
2 changed files:
- components/support/migration/src/main/java/mozilla/components/support/migration/FennecMigrator.kt
- components/support/migration/src/main/java/mozilla/components/support/migration/GeckoMigration.kt
Changes:
=====================================
components/support/migration/src/main/java/mozilla/components/support/migration/FennecMigrator.kt
=====================================
@@ -975,7 +975,7 @@ class FennecMigrator private constructor(
return try {
logger.debug("Migrating gecko files...")
- val result = GeckoMigration.migrate(profile.path, migrationVersion)
+ val result = GeckoMigration.migrate(profile.path, migrationVersion, context)
logger.debug("Migrated gecko files.")
if (result is Result.Failure<GeckoMigrationResult>) {
=====================================
components/support/migration/src/main/java/mozilla/components/support/migration/GeckoMigration.kt
=====================================
@@ -4,6 +4,7 @@
package mozilla.components.support.migration
+import android.content.Context
import android.util.AtomicFile
import androidx.annotation.VisibleForTesting
import mozilla.components.support.ktx.util.writeString
@@ -95,7 +96,8 @@ internal object GeckoMigration {
*/
fun migrate(
profilePath: String,
- migrationVersion: Int
+ migrationVersion: Int,
+ context: Context
): Result<GeckoMigrationResult> {
// GeckoView will happily pick up the profile from Fennec and reuse all data in it. So this
// migration is mostly focused on removing all prefs that we do not want to reuse.
@@ -118,6 +120,23 @@ internal object GeckoMigration {
}.toList()
}
+ val secLevel = prefsjs.useLines {
+ // The prefs are auto-generated, so we can expect the offset to be always the same
+ it.find { line -> line.startsWith("$USER_PREF(\"extensions.torbutton.security_slider\"") }
+ ?.substring(50, 51)?.toIntOrNull()
+ }
+ if (secLevel != null && secLevel > 0 && secLevel < 4) {
+ val prefVal = when (secLevel) {
+ 1 -> "pref_key_tor_security_level_safest_option"
+ else -> "pref_key_tor_security_level_safer_option"
+ }
+ val fenixAppPrefs = context.getSharedPreferences(FennecSettingsMigration.FENIX_SHARED_PREFS_NAME, Context.MODE_PRIVATE)
+ fenixAppPrefs.edit()
+ .putBoolean("pref_key_tor_security_level_standard_option", false)
+ .putBoolean(prefVal, true)
+ .apply()
+ }
+
return if (transformed.isEmpty()) {
removePrefsFile(prefsjs)
} else {
View it on GitLab: https://gitlab.torproject.org/tpo/applications/android-components/-/compare/cda23d340dafbe3731b0cb3c0f8d2a4c3986fedf...6b75c81e274436d60c43dae77db117a2ebcc5878
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/android-components/-/compare/cda23d340dafbe3731b0cb3c0f8d2a4c3986fedf...6b75c81e274436d60c43dae77db117a2ebcc5878
You're receiving this email because of your account on gitlab.torproject.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.torproject.org/pipermail/tor-commits/attachments/20201021/80c7d9d9/attachment-0001.htm>
More information about the tor-commits
mailing list