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

Unified Diff: chrome/renderer/pepper/pepper_uma_host.cc

Issue 187593009: Match Pepper UMA histograms by prefix (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/pepper/pepper_uma_host.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/pepper/pepper_uma_host.cc
diff --git a/chrome/renderer/pepper/pepper_uma_host.cc b/chrome/renderer/pepper/pepper_uma_host.cc
index 04a54296a9ba23a767c719380e6f4f3d27938190..63037c000690a8c538225f67ff8f77787a70e0c0 100644
--- a/chrome/renderer/pepper/pepper_uma_host.cc
+++ b/chrome/renderer/pepper/pepper_uma_host.cc
@@ -25,14 +25,17 @@ const char* kPredefinedAllowedUMAOrigins[] = {
"4EB74897CB187C7633357C2FE832E0AD6A44883A" // see crbug.com/317833
};
-const char* kWhitelistedHistogramHashes[] = {
- "F131550DAB7A7C6E6633EF81FB5998CC0482AC63", // see crbug.com/317833
- "13955AB4DAD798384DFB4304734FCF2A95F353CC", // see crbug.com/317833
- "404E800582901F1B937B8E287235FC603A5DEDFB" // see crbug.com/317833
+// The first 12 characters must match one of the prefixes below.
+const int kWhitelistedHistogramPrefixLength = 12;
Ilya Sherman 2014/03/06 00:34:14 Hmm, maybe scan up to the first dot instead?
elijahtaylor1 2014/03/06 00:46:27 Great suggestion. Done.
+
+const char* kWhitelistedHistogramPrefixes[] = {
Ilya Sherman 2014/03/06 00:34:14 nit: "const char* const"
elijahtaylor1 2014/03/06 00:46:27 Done.
+ "CD190EA2B764EDF0BB97552A638D32072F3CFD41", // see crbug.com/317833
Ilya Sherman 2014/03/06 00:34:14 nit: Links should start with "http://". Also, thi
elijahtaylor1 2014/03/06 00:46:27 Fixed "http://" Yeah, I agree that could be frust
};
-std::string HashHistogram(const std::string& histogram) {
- const std::string id_hash = base::SHA1HashString(histogram);
+
+std::string HashPrefix(const std::string& histogram) {
+ const std::string id_hash = base::SHA1HashString(
+ histogram.substr(0, kWhitelistedHistogramPrefixLength));
DCHECK_EQ(id_hash.length(), base::kSHA1Length);
return base::HexEncode(id_hash.c_str(), id_hash.length());
}
@@ -48,8 +51,8 @@ PepperUMAHost::PepperUMAHost(
is_plugin_in_process_(host->IsRunningInProcess()) {
for (size_t i = 0; i < arraysize(kPredefinedAllowedUMAOrigins); ++i)
allowed_origins_.insert(kPredefinedAllowedUMAOrigins[i]);
- for (size_t i = 0; i < arraysize(kWhitelistedHistogramHashes); ++i)
- allowed_histograms_.insert(kWhitelistedHistogramHashes[i]);
+ for (size_t i = 0; i < arraysize(kWhitelistedHistogramPrefixes); ++i)
+ allowed_histogram_prefixes_.insert(kWhitelistedHistogramPrefixes[i]);
}
PepperUMAHost::~PepperUMAHost() {
@@ -78,8 +81,8 @@ bool PepperUMAHost::IsHistogramAllowed(const std::string& histogram) {
ChromeContentRendererClient::IsExtensionOrSharedModuleWhitelisted(
document_url_, allowed_origins_);
if (is_whitelisted &&
- allowed_histograms_.find(HashHistogram(histogram)) !=
- allowed_histograms_.end()) {
+ allowed_histogram_prefixes_.find(HashPrefix(histogram)) !=
+ allowed_histogram_prefixes_.end()) {
return true;
}
« no previous file with comments | « chrome/renderer/pepper/pepper_uma_host.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698