summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgab <gab@chromium.org>2014-12-02 12:37:17 -0800
committerCommit bot <commit-bot@chromium.org>2014-12-02 20:37:39 +0000
commit086aea5fba7cf5034d0b3d7249170e4d45765b68 (patch)
treec6fb4c78462b2623d631fa9e2a5a97bf8a7402f3
parent28627f422a9703ce2a355905720586e6aa861f7c (diff)
downloadchromium_src-086aea5fba7cf5034d0b3d7249170e4d45765b68.zip
chromium_src-086aea5fba7cf5034d0b3d7249170e4d45765b68.tar.gz
chromium_src-086aea5fba7cf5034d0b3d7249170e4d45765b68.tar.bz2
Protect the kGoogleServicesUsername pref.
Also add missing items in the TrackedPreference histograms enum. (and clean up histogram labels to exclude namespaces) BUG=438105 TEST= A) First launch of Chrome with this change should result in a Settings.TrackedPreferenceTrustedInitialized for pref 21. B) Tampering with google.services.username in Secure Preferences while Chrome isn't running results in the user being signed out on the next launch. Review URL: https://codereview.chromium.org/775483004 Cr-Commit-Position: refs/heads/master@{#306444}
-rw-r--r--chrome/browser/prefs/chrome_pref_service_factory.cc7
-rw-r--r--tools/metrics/histograms/histograms.xml40
2 files changed, 28 insertions, 19 deletions
diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc
index 865864f..38251e6 100644
--- a/chrome/browser/prefs/chrome_pref_service_factory.cc
+++ b/chrome/browser/prefs/chrome_pref_service_factory.cc
@@ -198,6 +198,13 @@ const PrefHashFilter::TrackedPreferenceMetadata kTrackedPrefs[] = {
PrefHashFilter::TRACKING_STRATEGY_ATOMIC
},
#endif
+ {
+ 21, prefs::kGoogleServicesUsername,
+ PrefHashFilter::ENFORCE_ON_LOAD,
+ PrefHashFilter::TRACKING_STRATEGY_ATOMIC
+ },
+ // See note at top, new items added here also need to be added to
+ // histograms.xml's TrackedPreference enum.
};
// One more than the last tracked preferences ID above.
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml
index f46a8b8..e22ab98 100644
--- a/tools/metrics/histograms/histograms.xml
+++ b/tools/metrics/histograms/histograms.xml
@@ -56317,26 +56317,28 @@ To add a new entry, add it with any value and run test to compute valid value.
</enum>
<enum name="TrackedPreference" type="int">
- <int value="0" label="prefs::kShowHomeButton"/>
- <int value="1" label="prefs::kHomePageIsNewTabPage"/>
- <int value="2" label="prefs::kHomePage"/>
- <int value="3" label="prefs::kRestoreOnStartup"/>
- <int value="4" label="prefs::kURLsToRestoreOnStartup"/>
+ <int value="0" label="kShowHomeButton"/>
+ <int value="1" label="kHomePageIsNewTabPage"/>
+ <int value="2" label="kHomePage"/>
+ <int value="3" label="kRestoreOnStartup"/>
+ <int value="4" label="kURLsToRestoreOnStartup"/>
<int value="5" label="extensions::pref_names::kExtensions"/>
- <int value="6" label="prefs::kGoogleServicesLastUsername"/>
- <int value="7" label="prefs::kSearchProviderOverrides"/>
- <int value="8" label="prefs::kDefaultSearchProviderSearchURL"/>
- <int value="9" label="prefs::kDefaultSearchProviderKeyword"/>
- <int value="10" label="prefs::kDefaultSearchProviderName"/>
- <int value="11" label="prefs::kPinnedTabs"/>
- <int value="12"
- label="extensions::pref_names::kKnownDisabled (Obsolete 07/2014)"/>
- <int value="13" label="prefs::kProfileResetPromptMemento"/>
- <int value="14"
- label="DefaultSearchManager::kDefaultSearchProviderDataPrefName"/>
- <int value="15" label="prefs::kPreferenceResetTime"/>
- <int value="16" label="prefs::kSafeBrowsingIncidentReportSent"/>
- <int value="17" label="sync_driver::prefs::kSyncRemainingRollbackTries"/>
+ <int value="6" label="kGoogleServicesLastUsername"/>
+ <int value="7" label="kSearchProviderOverrides"/>
+ <int value="8" label="kDefaultSearchProviderSearchURL"/>
+ <int value="9" label="kDefaultSearchProviderKeyword"/>
+ <int value="10" label="kDefaultSearchProviderName"/>
+ <int value="11" label="kPinnedTabs"/>
+ <int value="12" label="kKnownDisabled (Obsolete 07/2014)"/>
+ <int value="13" label="kProfileResetPromptMemento"/>
+ <int value="14" label="kDefaultSearchProviderDataPrefName"/>
+ <int value="15" label="kPreferenceResetTime"/>
+ <int value="16" label="kSafeBrowsingIncidentReportSent"/>
+ <int value="17" label="kSyncRemainingRollbackTries"/>
+ <int value="18" label="kSafeBrowsingIncidentsSent"/>
+ <int value="19" label="kSwReporterPromptVersion"/>
+ <int value="20" label="kSwReporterPromptReason"/>
+ <int value="21" label="kGoogleServicesUsername"/>
</enum>
<enum name="TranslateError" type="int">