| Index: chrome/browser/metrics/variations/variations_http_header_provider.cc
|
| ===================================================================
|
| --- chrome/browser/metrics/variations/variations_http_header_provider.cc (revision 261467)
|
| +++ chrome/browser/metrics/variations/variations_http_header_provider.cc (working copy)
|
| @@ -30,7 +30,11 @@
|
| bool uma_enabled,
|
| net::HttpRequestHeaders* headers) {
|
| // Note the criteria for attaching Chrome experiment headers:
|
| - // 1. We only transmit to *.google.<TLD> or *.youtube.<TLD> domains.
|
| + // 1. We only transmit to Google owned domains which can evaluate experiments.
|
| + // 1a. These include hosts which have a standard postfix such as:
|
| + // *.doubleclick.net or *.googlesyndication.com or
|
| + // exactly www.googleadservices.com or
|
| + // international TLD domains *.google.<TLD> or *.youtube.<TLD>.
|
| // 2. Only transmit for non-Incognito profiles.
|
| // 3. For the X-Chrome-UMA-Enabled bit, only set it if UMA is in fact enabled
|
| // for this install of Chrome.
|
| @@ -178,11 +182,19 @@
|
| return true;
|
| }
|
|
|
| - // The below mirrors logic in IsGoogleDomainUrl(), but for youtube.<TLD>.
|
| if (!url.is_valid() || !url.SchemeIsHTTPOrHTTPS())
|
| return false;
|
|
|
| + // Some domains don't have international TLD extensions, so testing for them
|
| + // is very straight forward.
|
| const std::string host = url.host();
|
| + if (EndsWith(host, ".doubleclick.net", false) ||
|
| + EndsWith(host, ".googlesyndication.com", false) ||
|
| + LowerCaseEqualsASCII(host, "www.googleadservices.com")) {
|
| + return true;
|
| + }
|
| +
|
| + // The below mirrors logic in IsGoogleDomainUrl(), but for youtube.<TLD>.
|
| const size_t tld_length = net::registry_controlled_domains::GetRegistryLength(
|
| host,
|
| net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
|
|
|