summaryrefslogtreecommitdiffstats
path: root/sync
diff options
context:
space:
mode:
authormaxbogue <maxbogue@chromium.org>2014-10-16 17:43:40 -0700
committerCommit bot <commit-bot@chromium.org>2014-10-17 00:44:20 +0000
commitd355b341dc90c30761681de000da4cf59cd794ac (patch)
tree88bac2f872918d88d60b52c533caec11ff9cecde /sync
parentb2dd79c61e4fc3ffe8fc6226576f2a5ddd5ec61b (diff)
downloadchromium_src-d355b341dc90c30761681de000da4cf59cd794ac.zip
chromium_src-d355b341dc90c30761681de000da4cf59cd794ac.tar.gz
chromium_src-d355b341dc90c30761681de000da4cf59cd794ac.tar.bz2
Allow disabling the encrypt everything option.
In certain cases, we don't want to allow encrypting all data (AKA, the CUSTOM_PASSPHRASE type). BUG=424187 Review URL: https://codereview.chromium.org/656333002 Cr-Commit-Position: refs/heads/master@{#300029}
Diffstat (limited to 'sync')
-rw-r--r--sync/android/java/src/org/chromium/sync/internal_api/pub/SyncDecryptionPassphraseType.java19
1 files changed, 17 insertions, 2 deletions
diff --git a/sync/android/java/src/org/chromium/sync/internal_api/pub/SyncDecryptionPassphraseType.java b/sync/android/java/src/org/chromium/sync/internal_api/pub/SyncDecryptionPassphraseType.java
index 27de932..2437953 100644
--- a/sync/android/java/src/org/chromium/sync/internal_api/pub/SyncDecryptionPassphraseType.java
+++ b/sync/android/java/src/org/chromium/sync/internal_api/pub/SyncDecryptionPassphraseType.java
@@ -80,14 +80,21 @@ public enum SyncDecryptionPassphraseType implements Parcelable {
return visibleTypes;
}
- public Set<SyncDecryptionPassphraseType> getAllowedTypes() {
+ /**
+ * Get the types that are allowed to be enabled from the current type.
+ *
+ * @param encryptEverythingAllowed Whether encrypting all data is allowed.
+ */
+ public Set<SyncDecryptionPassphraseType> getAllowedTypes(boolean encryptEverythingAllowed) {
Set<SyncDecryptionPassphraseType> allowedTypes = new HashSet<>();
switch (this) {
case NONE: // Intentional fall through.
case IMPLICIT_PASSPHRASE: // Intentional fall through.
case KEYSTORE_PASSPHRASE:
allowedTypes.add(this);
- allowedTypes.add(CUSTOM_PASSPHRASE);
+ if (encryptEverythingAllowed) {
+ allowedTypes.add(CUSTOM_PASSPHRASE);
+ }
break;
case FROZEN_IMPLICIT_PASSPHRASE: // Intentional fall through.
case CUSTOM_PASSPHRASE: // Intentional fall through.
@@ -98,6 +105,14 @@ public enum SyncDecryptionPassphraseType implements Parcelable {
return allowedTypes;
}
+ /**
+ * TODO(maxbogue): Remove when no longer used in Clank; see http://crbug.com/424187.
+ */
+ @Deprecated
+ public Set<SyncDecryptionPassphraseType> getAllowedTypes() {
+ return getAllowedTypes(true);
+ }
+
public int internalValue() {
// Since the values in this enums are constant and very small, this cast is safe.
return mNativeValue;