From 086c263c296e9f4cbeceaffa63e5925a8bbd2cda Mon Sep 17 00:00:00 2001 From: Grzegorz Gajewski Date: Fri, 10 Feb 2023 15:17:45 +0100 Subject: [PATCH 1/2] Respect the methods setting Signed-off-by: Grzegorz Gajewski --- .../recover/BootstrapSetupRecoveryKeyFragment.kt | 2 +- .../crypto/recover/BootstrapSharedViewModel.kt | 15 +++++++-------- .../app/features/crypto/recover/BootstrapStep.kt | 2 +- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSetupRecoveryKeyFragment.kt b/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSetupRecoveryKeyFragment.kt index b03cbe87a87..1d5e34024b0 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSetupRecoveryKeyFragment.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSetupRecoveryKeyFragment.kt @@ -66,7 +66,7 @@ class BootstrapSetupRecoveryKeyFragment : views.bootstrapSetupSecureSubmit.isVisible = false // Choose between create a passphrase or use a recovery key - renderBackupMethodActions(firstFormStep.methods) + renderBackupMethodActions(state.secureBackupMethod) } } diff --git a/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSharedViewModel.kt b/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSharedViewModel.kt index bab112cd66d..75329f6dc43 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSharedViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapSharedViewModel.kt @@ -107,8 +107,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( copy( step = BootstrapStep.FirstForm( keyBackUpExist = false, - reset = session.sharedSecretStorageService().isRecoverySetup(), - methods = this.secureBackupMethod + reset = session.sharedSecretStorageService().isRecoverySetup() ) ) } @@ -134,7 +133,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( // we just resume plain bootstrap doesKeyBackupExist = false setState { - copy(step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist, methods = this.secureBackupMethod)) + copy(step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist)) } } else { // we need to get existing backup passphrase/key and convert to SSSS @@ -148,7 +147,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( doesKeyBackupExist = true isBackupCreatedFromPassphrase = keyVersion.getAuthDataAsMegolmBackupAuthData()?.privateKeySalt != null setState { - copy(step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist, methods = this.secureBackupMethod)) + copy(step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist)) } } } @@ -496,7 +495,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( } else { setState { copy( - step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist, methods = this.secureBackupMethod), + step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist), // Also reset the passphrase passphrase = null, passphraseRepeat = null, @@ -509,7 +508,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( is BootstrapStep.SetupPassphrase -> { setState { copy( - step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist, methods = this.secureBackupMethod), + step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist), // Also reset the passphrase passphrase = null, passphraseRepeat = null @@ -530,7 +529,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( // Go back to the first step setState { copy( - step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist, methods = this.secureBackupMethod), + step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist), // Also reset the passphrase passphrase = null, passphraseRepeat = null @@ -563,7 +562,7 @@ class BootstrapSharedViewModel @AssistedInject constructor( is BootstrapStep.GetBackupSecretForMigration -> { setState { copy( - step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist, methods = this.secureBackupMethod), + step = BootstrapStep.FirstForm(keyBackUpExist = doesKeyBackupExist), // Also reset the passphrase passphrase = null, passphraseRepeat = null, diff --git a/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapStep.kt b/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapStep.kt index 3975f0e9a23..2aadbfcf97c 100644 --- a/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapStep.kt +++ b/vector/src/main/java/im/vector/app/features/crypto/recover/BootstrapStep.kt @@ -91,7 +91,7 @@ sealed class BootstrapStep { object CheckingMigration : BootstrapStep() // Use will be asked to choose between passphrase or recovery key, or to start process if a key backup exists - data class FirstForm(val keyBackUpExist: Boolean, val reset: Boolean = false, val methods: SecureBackupMethod) : BootstrapStep() + data class FirstForm(val keyBackUpExist: Boolean, val reset: Boolean = false) : BootstrapStep() object SetupPassphrase : BootstrapStep() object ConfirmPassphrase : BootstrapStep() From 6a436c097be738db2b4be885826df8435f6fc8e8 Mon Sep 17 00:00:00 2001 From: Grzegorz Gajewski Date: Fri, 10 Feb 2023 15:36:50 +0100 Subject: [PATCH 2/2] Add changelog Signed-off-by: Grzegorz Gajewski --- changelog.d/8113.bugfix | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/8113.bugfix diff --git a/changelog.d/8113.bugfix b/changelog.d/8113.bugfix new file mode 100644 index 00000000000..256acee2734 --- /dev/null +++ b/changelog.d/8113.bugfix @@ -0,0 +1 @@ +Respect the secure backup methods setting \ No newline at end of file