Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(75)

Side by Side Diff: chrome/browser/sync/profile_sync_service.cc

Issue 665223007: Add a flag to ProfileSyncService that says whether encrypting all data is allowed. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/sync/profile_sync_service.h" 5 #include "chrome/browser/sync/profile_sync_service.h"
6 6
7 #include <cstddef> 7 #include <cstddef>
8 #include <map> 8 #include <map>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 sync_prefs_(profile_->GetPrefs()), 211 sync_prefs_(profile_->GetPrefs()),
212 sync_service_url_(GetSyncServiceURL(*CommandLine::ForCurrentProcess())), 212 sync_service_url_(GetSyncServiceURL(*CommandLine::ForCurrentProcess())),
213 is_first_time_sync_configure_(false), 213 is_first_time_sync_configure_(false),
214 backend_initialized_(false), 214 backend_initialized_(false),
215 sync_disabled_by_admin_(false), 215 sync_disabled_by_admin_(false),
216 is_auth_in_progress_(false), 216 is_auth_in_progress_(false),
217 signin_(signin_wrapper.Pass()), 217 signin_(signin_wrapper.Pass()),
218 unrecoverable_error_reason_(ERROR_REASON_UNSET), 218 unrecoverable_error_reason_(ERROR_REASON_UNSET),
219 expect_sync_configuration_aborted_(false), 219 expect_sync_configuration_aborted_(false),
220 encrypted_types_(syncer::SyncEncryptionHandler::SensitiveTypes()), 220 encrypted_types_(syncer::SyncEncryptionHandler::SensitiveTypes()),
221 encrypt_everything_allowed_(true),
221 encrypt_everything_(false), 222 encrypt_everything_(false),
222 encryption_pending_(false), 223 encryption_pending_(false),
223 configure_status_(DataTypeManager::UNKNOWN), 224 configure_status_(DataTypeManager::UNKNOWN),
224 oauth2_token_service_(oauth2_token_service), 225 oauth2_token_service_(oauth2_token_service),
225 request_access_token_backoff_(&kRequestAccessTokenBackoffPolicy), 226 request_access_token_backoff_(&kRequestAccessTokenBackoffPolicy),
226 weak_factory_(this), 227 weak_factory_(this),
227 startup_controller_weak_factory_(this), 228 startup_controller_weak_factory_(this),
228 connection_status_(syncer::CONNECTION_NOT_ATTEMPTED), 229 connection_status_(syncer::CONNECTION_NOT_ATTEMPTED),
229 last_get_token_error_(GoogleServiceAuthError::AuthErrorNone()), 230 last_get_token_error_(GoogleServiceAuthError::AuthErrorNone()),
230 network_resources_(new syncer::HttpBridgeNetworkResources), 231 network_resources_(new syncer::HttpBridgeNetworkResources),
(...skipping 1124 matching lines...) Expand 10 before | Expand all | Expand 10 after
1355 // TODO(rlarocque): Support non-blocking types. http://crbug.com/351005. 1356 // TODO(rlarocque): Support non-blocking types. http://crbug.com/351005.
1356 1357
1357 NotifyObservers(); 1358 NotifyObservers();
1358 } 1359 }
1359 1360
1360 void ProfileSyncService::OnEncryptedTypesChanged( 1361 void ProfileSyncService::OnEncryptedTypesChanged(
1361 syncer::ModelTypeSet encrypted_types, 1362 syncer::ModelTypeSet encrypted_types,
1362 bool encrypt_everything) { 1363 bool encrypt_everything) {
1363 encrypted_types_ = encrypted_types; 1364 encrypted_types_ = encrypted_types;
1364 encrypt_everything_ = encrypt_everything; 1365 encrypt_everything_ = encrypt_everything;
1366 DCHECK(encrypt_everything_allowed_ || !encrypt_everything_);
1365 DVLOG(1) << "Encrypted types changed to " 1367 DVLOG(1) << "Encrypted types changed to "
1366 << syncer::ModelTypeSetToString(encrypted_types_) 1368 << syncer::ModelTypeSetToString(encrypted_types_)
1367 << " (encrypt everything is set to " 1369 << " (encrypt everything is set to "
1368 << (encrypt_everything_ ? "true" : "false") << ")"; 1370 << (encrypt_everything_ ? "true" : "false") << ")";
1369 DCHECK(encrypted_types_.Has(syncer::PASSWORDS)); 1371 DCHECK(encrypted_types_.Has(syncer::PASSWORDS));
1370 1372
1371 NotifyObservers(); 1373 NotifyObservers();
1372 } 1374 }
1373 1375
1374 void ProfileSyncService::OnEncryptionComplete() { 1376 void ProfileSyncService::OnEncryptionComplete() {
(...skipping 812 matching lines...) Expand 10 before | Expand all | Expand 10 after
2187 if (IsPassphraseRequired()) { 2189 if (IsPassphraseRequired()) {
2188 DVLOG(1) << "Setting passphrase for decryption."; 2190 DVLOG(1) << "Setting passphrase for decryption.";
2189 return backend_->SetDecryptionPassphrase(passphrase); 2191 return backend_->SetDecryptionPassphrase(passphrase);
2190 } else { 2192 } else {
2191 NOTREACHED() << "SetDecryptionPassphrase must not be called when " 2193 NOTREACHED() << "SetDecryptionPassphrase must not be called when "
2192 "IsPassphraseRequired() is false."; 2194 "IsPassphraseRequired() is false.";
2193 return false; 2195 return false;
2194 } 2196 }
2195 } 2197 }
2196 2198
2199 bool ProfileSyncService::EncryptEverythingAllowed() const {
2200 return encrypt_everything_allowed_;
2201 }
2202
2203 void ProfileSyncService::SetEncryptEverythingAllowed(bool allowed) {
2204 encrypt_everything_allowed_ = allowed;
Marc Treib 2014/10/22 16:10:39 Hm. Do we need to handle the case when this is set
2205 }
2206
2197 void ProfileSyncService::EnableEncryptEverything() { 2207 void ProfileSyncService::EnableEncryptEverything() {
2208 DCHECK(EncryptEverythingAllowed());
2209
2198 // Tests override backend_initialized() to always return true, so we 2210 // Tests override backend_initialized() to always return true, so we
2199 // must check that instead of |backend_initialized_|. 2211 // must check that instead of |backend_initialized_|.
2200 // TODO(akalin): Fix the above. :/ 2212 // TODO(akalin): Fix the above. :/
2201 DCHECK(backend_initialized()); 2213 DCHECK(backend_initialized());
2202 // TODO(atwilson): Persist the encryption_pending_ flag to address the various 2214 // TODO(atwilson): Persist the encryption_pending_ flag to address the various
2203 // problems around cancelling encryption in the background (crbug.com/119649). 2215 // problems around cancelling encryption in the background (crbug.com/119649).
2204 if (!encrypt_everything_) 2216 if (!encrypt_everything_)
2205 encryption_pending_ = true; 2217 encryption_pending_ = true;
2206 } 2218 }
2207 2219
(...skipping 508 matching lines...) Expand 10 before | Expand all | Expand 10 after
2716 base::Time ProfileSyncService::GetDeviceBackupTimeForTesting() const { 2728 base::Time ProfileSyncService::GetDeviceBackupTimeForTesting() const {
2717 return device_info_sync_service_->GetLocalDeviceBackupTime(); 2729 return device_info_sync_service_->GetLocalDeviceBackupTime();
2718 } 2730 }
2719 2731
2720 void ProfileSyncService::FlushDirectory() const { 2732 void ProfileSyncService::FlushDirectory() const {
2721 // backend_initialized_ implies backend_ isn't NULL and the manager exists. 2733 // backend_initialized_ implies backend_ isn't NULL and the manager exists.
2722 // If sync is not initialized yet, we fail silently. 2734 // If sync is not initialized yet, we fail silently.
2723 if (backend_initialized_) 2735 if (backend_initialized_)
2724 backend_->FlushDirectory(); 2736 backend_->FlushDirectory();
2725 } 2737 }
OLDNEW
« no previous file with comments | « chrome/browser/sync/profile_sync_service.h ('k') | chrome/browser/sync/profile_sync_service_android.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698