From fa27531c00cd55eba7666ec1b85403b439b9c7dc Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Fri, 24 May 2024 15:01:11 -0400 Subject: [PATCH] Inline SVR2 feature flag. --- .../org/thoughtcrime/securesms/jobs/Svr2MirrorJob.kt | 6 ------ .../org/thoughtcrime/securesms/pin/SvrRepository.kt | 3 +-- .../thoughtcrime/securesms/util/FeatureFlags.java | 12 ------------ 3 files changed, 1 insertion(+), 20 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/Svr2MirrorJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/Svr2MirrorJob.kt index 8fede87d7a..f531c72f5e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/Svr2MirrorJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/Svr2MirrorJob.kt @@ -12,7 +12,6 @@ import org.thoughtcrime.securesms.jobmanager.JsonJobData import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.pin.SvrRepository -import org.thoughtcrime.securesms.util.FeatureFlags import org.whispersystems.signalservice.api.push.exceptions.NonSuccessfulResponseCodeException import org.whispersystems.signalservice.api.svr.SecureValueRecovery.BackupResponse import org.whispersystems.signalservice.api.svr.SecureValueRecovery.PinChangeSession @@ -67,11 +66,6 @@ class Svr2MirrorJob private constructor(parameters: Parameters, private var seri return Result.success() } - if (!FeatureFlags.svr2()) { - Log.w(TAG, "SVR2 was disabled! SKipping.") - return Result.success() - } - val svr2: SecureValueRecoveryV2 = AppDependencies.signalServiceAccountManager.getSecureValueRecoveryV2(BuildConfig.SVR2_MRENCLAVE) val session: PinChangeSession = serializedChangeSession?.let { session -> diff --git a/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt index 8bcc0f221c..d1aa640b78 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt @@ -23,7 +23,6 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.lock.v2.PinKeyboardType import org.thoughtcrime.securesms.megaphone.Megaphones import org.thoughtcrime.securesms.registration.viewmodel.SvrAuthCredentialSet -import org.thoughtcrime.securesms.util.FeatureFlags import org.whispersystems.signalservice.api.SvrNoDataException import org.whispersystems.signalservice.api.kbs.MasterKey import org.whispersystems.signalservice.api.svr.SecureValueRecovery @@ -154,6 +153,7 @@ object SvrRepository { .enqueueAndBlockUntilCompletion(TimeUnit.SECONDS.toMillis(10)) stopwatch.split("contact-restore") + // TODO [svr3] if (implementation != svr2) { AppDependencies.jobManager.add(Svr2MirrorJob()) } @@ -200,7 +200,6 @@ object SvrRepository { val masterKey: MasterKey = SignalStore.svr().getOrCreateMasterKey() val responses: List = writeImplementations - .filter { it != svr2 || FeatureFlags.svr2() } .map { it.setPin(userPin, masterKey) } .map { it.execute() } diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java b/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java index 1e4ccda484..ffc5db3d11 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/FeatureFlags.java @@ -101,7 +101,6 @@ public final class FeatureFlags { private static final String MAX_ATTACHMENT_COUNT = "android.attachments.maxCount"; private static final String MAX_ATTACHMENT_RECEIVE_SIZE_BYTES = "global.attachments.maxReceiveBytes"; private static final String MAX_ATTACHMENT_SIZE_BYTES = "global.attachments.maxBytes"; - private static final String SVR2_KILLSWITCH = "android.svr2.killSwitch"; private static final String CDS_DISABLE_COMPAT_MODE = "cds.disableCompatibilityMode"; private static final String FCM_MAY_HAVE_MESSAGES_KILL_SWITCH = "android.fcmNotificationFallbackKillSwitch"; public static final String PROMPT_FOR_NOTIFICATION_LOGS = "android.logs.promptNotifications"; @@ -185,7 +184,6 @@ public final class FeatureFlags { MAX_ATTACHMENT_RECEIVE_SIZE_BYTES, MAX_ATTACHMENT_SIZE_BYTES, AD_HOC_CALLING, - SVR2_KILLSWITCH, CDS_DISABLE_COMPAT_MODE, FCM_MAY_HAVE_MESSAGES_KILL_SWITCH, PROMPT_FOR_NOTIFICATION_LOGS, @@ -271,7 +269,6 @@ public final class FeatureFlags { MAX_ATTACHMENT_COUNT, MAX_ATTACHMENT_RECEIVE_SIZE_BYTES, MAX_ATTACHMENT_SIZE_BYTES, - SVR2_KILLSWITCH, CDS_DISABLE_COMPAT_MODE, FCM_MAY_HAVE_MESSAGES_KILL_SWITCH, PROMPT_FOR_NOTIFICATION_LOGS, @@ -297,7 +294,6 @@ public final class FeatureFlags { @VisibleForTesting static final Set STICKY = SetUtil.newHashSet( VERIFY_V2, - SVR2_KILLSWITCH, FCM_MAY_HAVE_MESSAGES_KILL_SWITCH ); @@ -906,14 +902,6 @@ public final class FeatureFlags { return getInteger(MESSAGE_PROCESSOR_DELAY, 300); } - /** - * Whether or not SVR2 should be used at all. Defaults to true. In practice this is reserved as a killswitch. - */ - public static boolean svr2() { - // Despite us always inverting the value, it's important that this defaults to false so that the STICKY property works as intended - return !getBoolean(SVR2_KILLSWITCH, false); - } - private enum VersionFlag { /** The flag is no set */ OFF,