summaryrefslogtreecommitdiff
path: root/www/chromium-uc/patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch
diff options
context:
space:
mode:
Diffstat (limited to 'www/chromium-uc/patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch')
-rw-r--r--www/chromium-uc/patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch858
1 files changed, 0 insertions, 858 deletions
diff --git a/www/chromium-uc/patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch b/www/chromium-uc/patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch
deleted file mode 100644
index 198b00e..0000000
--- a/www/chromium-uc/patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch
+++ /dev/null
@@ -1,858 +0,0 @@
1From 06f6141610cb2aa562c94dbb9f1f4355e4b34c5d Mon Sep 17 00:00:00 2001
2From: Jan Engelhardt <jengelh@inai.de>
3Date: Mon, 30 Sep 2019 09:37:51 +0200
4Subject: [PATCH 75/76] all: add trk: prefixes to possibly evil connections
5
6Prefix URLs to Google services with trk: so that whenever something
7tries to load them, the developer will be informed via printf and
8dialog (extra info bar between URLbar and content window) about this.
9
10If you see such dialog, we know that (a) either the URL needs to be
11whitelisted, or (b) the feature that triggered it needs to be disabled
12by default.
13---
14 build/mac/tweak_info_plist.py | 2 +-
15 .../customization/customization_document.cc | 2 +-
16 .../file_manager/private_api_drive.cc | 2 +-
17 .../file_manager/private_api_misc.cc | 2 +-
18 .../remote_commands/crd_host_delegate.cc | 6 +++---
19 .../cryptotoken_private_api.cc | 4 ++--
20 chrome/browser/extensions/install_signer.cc | 2 +-
21 .../media/webrtc/webrtc_event_log_uploader.cc | 2 +-
22 .../media/webrtc/webrtc_log_uploader.cc | 2 +-
23 .../nacl_host/nacl_infobar_delegate.cc | 2 +-
24 .../profiles/profile_avatar_downloader.cc | 2 +-
25 .../default_apps/external_extensions.json | 6 +++---
26 .../client_side_detection_service.cc | 2 +-
27 .../download_protection/download_feedback.cc | 2 +-
28 .../spellcheck_hunspell_dictionary.cc | 2 +-
29 .../supervised_user_service.cc | 2 +-
30 .../browser/tracing/crash_service_uploader.cc | 2 +-
31 .../ui/views/outdated_upgrade_bubble_view.cc | 2 +-
32 .../ui/webui/ntp/ntp_resource_cache.cc | 8 ++++----
33 .../components/recovery_component.cc | 2 +-
34 .../crash/crashpad_crash_reporter.cc | 2 +-
35 .../extensions/chrome_extensions_client.cc | 4 ++--
36 .../setup/google_chrome_behaviors.cc | 2 +-
37 .../browser/service/cast_service_simple.cc | 2 +-
38 chromecast/crash/linux/minidump_uploader.cc | 2 +-
39 .../simple_geolocation_provider.cc | 2 +-
40 .../common/cloud_devices_urls.cc | 8 ++++----
41 components/drive/service/drive_api_service.cc | 4 ++--
42 components/feedback/feedback_uploader.cc | 2 +-
43 components/gcm_driver/gcm_account_tracker.cc | 4 ++--
44 components/google/core/common/google_util.cc | 2 +-
45 .../core/browser/web_history_service.cc | 6 +++---
46 components/metrics/url_constants.cc | 2 +-
47 .../core/browser/password_store.cc | 8 ++++----
48 .../safe_search_url_checker_client.cc | 2 +-
49 .../safe_search_api/stub_url_checker.cc | 2 +-
50 .../core/browser/translate_url_fetcher.cc | 1 +
51 .../translate/core/common/translate_util.cc | 2 +-
52 .../variations/variations_url_constants.cc | 2 +-
53 .../speech/speech_recognition_engine.cc | 2 +-
54 .../browser/webauth/authenticator_common.cc | 4 ++--
55 .../shell/browser/shell_browser_main_parts.cc | 2 +-
56 google_apis/gaia/gaia_constants.cc | 20 +++++++++----------
57 google_apis/gaia/gaia_urls.cc | 1 +
58 google_apis/gcm/engine/gservices_settings.cc | 6 +++---
59 .../notifier/base/gaia_token_pre_xmpp_auth.cc | 2 +-
60 remoting/base/breakpad_mac.mm | 2 +-
61 remoting/protocol/jingle_messages.cc | 2 +-
62 rlz/lib/lib_values.cc | 2 +-
63 third_party/libjingle_xmpp/xmpp/constants.cc | 6 +++---
64 .../chromevox/background/prefs.js | 4 ++--
65 .../chromevoxclassic/host/chrome/host.js | 4 ++--
66 ui/views/examples/webview_example.cc | 2 +-
67 54 files changed, 89 insertions(+), 87 deletions(-)
68
69--- build/apple/tweak_info_plist.py.orig
70+++ build/apple/tweak_info_plist.py
71@@ -195,7 +195,7 @@ def _AddKeystoneKeys(plist, bundle_ident
72 also requires the |bundle_identifier| argument (com.example.product)."""
73 plist['KSVersion'] = plist['CFBundleShortVersionString']
74 plist['KSProductID'] = bundle_identifier
75- plist['KSUpdateURL'] = 'https://tools.google.com/service/update2'
76+ plist['KSUpdateURL'] = 'trk:132:https://tools.google.com/service/update2'
77
78 _RemoveKeys(plist, 'KSChannelID')
79 if base_tag != '':
80--- chrome/browser/ash/customization/customization_document.cc.orig
81+++ chrome/browser/ash/customization/customization_document.cc
82@@ -175,7 +175,7 @@ std::string ReadFileInBackground(const b
83
84 // Template URL where to fetch OEM services customization manifest from.
85 const char ServicesCustomizationDocument::kManifestUrl[] =
86- "https://ssl.gstatic.com/chrome/chromeos-customization/%s.json";
87+ "trk:151:https://ssl.gstatic.com/chrome/chromeos-customization/%s.json";
88
89 // A custom extensions::ExternalLoader that the ServicesCustomizationDocument
90 // creates and uses to publish OEM default apps to the extensions system.
91--- chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc.orig
92+++ chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
93@@ -87,7 +87,7 @@ namespace {
94
95 using api::file_manager_private::ProfileInfo;
96
97-const char kCWSScope[] = "https://www.googleapis.com/auth/chromewebstore";
98+const char kCWSScope[] = "trk:209:https://www.googleapis.com/auth/chromewebstore";
99
100 // Thresholds for mountCrostini() API.
101 constexpr base::TimeDelta kMountCrostiniSlowOperationThreshold =
102--- chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api.cc.orig
103+++ chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api.cc
104@@ -52,8 +52,8 @@ namespace {
105
106 const char kGoogleDotCom[] = "google.com";
107 constexpr const char* kGoogleGstaticAppIds[] = {
108- "https://www.gstatic.com/securitykey/origins.json",
109- "https://www.gstatic.com/securitykey/a/google.com/origins.json"};
110+ "trk:273:https://www.gstatic.com/securitykey/origins.json",
111+ "trk:274:https://www.gstatic.com/securitykey/a/google.com/origins.json"};
112
113 // ContainsAppIdByHash returns true iff the SHA-256 hash of one of the
114 // elements of |list| equals |hash|.
115--- chrome/browser/extensions/install_signer.cc.orig
116+++ chrome/browser/extensions/install_signer.cc
117@@ -67,7 +67,7 @@ const int kSignatureFormatVersion = 2;
118 const size_t kSaltBytes = 32;
119
120 const char kBackendUrl[] =
121- "https://www.googleapis.com/chromewebstore/v1.1/items/verify";
122+ "trk:222:https://www.googleapis.com/chromewebstore/v1.1/items/verify";
123
124 const char kPublicKeyPEM[] = \
125 "-----BEGIN PUBLIC KEY-----" \
126--- chrome/browser/media/webrtc/webrtc_event_log_uploader.cc.orig
127+++ chrome/browser/media/webrtc/webrtc_event_log_uploader.cc
128@@ -125,7 +125,7 @@ void OnURLLoadUploadProgress(uint64_t cu
129 } // namespace
130
131 const char WebRtcEventLogUploaderImpl::kUploadURL[] =
132- "https://clients2.google.com/cr/report";
133+ "trk:300:https://clients2.google.com/cr/report";
134
135 WebRtcEventLogUploaderImpl::Factory::Factory(
136 scoped_refptr<base::SequencedTaskRunner> task_runner)
137--- chrome/browser/media/webrtc/webrtc_log_uploader.cc.orig
138+++ chrome/browser/media/webrtc/webrtc_log_uploader.cc
139@@ -485,7 +485,7 @@ void WebRtcLogUploader::UploadCompressed
140 "Not implemented, it would be good to do so."
141 })");
142
143- constexpr char kUploadURL[] = "https://clients2.google.com/cr/report";
144+ constexpr char kUploadURL[] = "trk:301:https://clients2.google.com/cr/report";
145 auto resource_request = std::make_unique<network::ResourceRequest>();
146 resource_request->url = !upload_url_for_testing_.is_empty()
147 ? upload_url_for_testing_
148--- chrome/browser/nacl_host/nacl_infobar_delegate.cc.orig
149+++ chrome/browser/nacl_host/nacl_infobar_delegate.cc
150@@ -33,7 +33,7 @@ std::u16string NaClInfoBarDelegate::GetL
151 }
152
153 GURL NaClInfoBarDelegate::GetLinkURL() const {
154- return GURL("https://support.google.com/chrome/?p=ib_nacl");
155+ return GURL("trk:143:https://support.google.com/chrome/?p=ib_nacl");
156 }
157
158 std::u16string NaClInfoBarDelegate::GetMessageText() const {
159--- chrome/browser/profiles/profile_avatar_downloader.cc.orig
160+++ chrome/browser/profiles/profile_avatar_downloader.cc
161@@ -20,7 +20,7 @@
162
163 namespace {
164 const char kHighResAvatarDownloadUrlPrefix[] =
165- "https://www.gstatic.com/chrome/profile_avatars/";
166+ "trk:271:https://www.gstatic.com/chrome/profile_avatars/";
167 }
168
169 ProfileAvatarDownloader::ProfileAvatarDownloader(size_t icon_index,
170--- chrome/browser/resources/default_apps/external_extensions.json.orig
171+++ chrome/browser/resources/default_apps/external_extensions.json
172@@ -23,17 +23,17 @@
173 },
174 // Google Sheets
175 "aapocclcgogkmnckokdopfmhonfmgoek" : {
176- "external_update_url": "https://clients2.google.com/service/update2/crx",
177+ "external_update_url": "trk:03:https://clients2.google.com/service/update2/crx",
178 "web_app_migration_flag": "MigrateDefaultChromeAppToWebAppsGSuite"
179 },
180 // Google Slides
181 "felcaaldnbdncclmgdcncolpebgiejap" : {
182- "external_update_url": "https://clients2.google.com/service/update2/crx",
183+ "external_update_url": "trk:04:https://clients2.google.com/service/update2/crx",
184 "web_app_migration_flag": "MigrateDefaultChromeAppToWebAppsGSuite"
185 },
186 // Drive extension
187 "ghbmnnjooekpmoecnnnilnnbdlolhkhi" : {
188- "external_update_url": "https://clients2.google.com/service/update2/crx"
189+ "external_update_url": "trk:04:https://clients2.google.com/service/update2/crx"
190 }
191 }
192
193--- chrome/browser/safe_browsing/download_protection/download_feedback.cc.orig
194+++ chrome/browser/safe_browsing/download_protection/download_feedback.cc
195@@ -202,7 +202,7 @@ const int64_t DownloadFeedback::kMaxUplo
196
197 // static
198 const char DownloadFeedback::kSbFeedbackURL[] =
199- "https://safebrowsing.google.com/safebrowsing/uploads/chrome";
200+ "trk:164:https://safebrowsing.google.com/safebrowsing/uploads/chrome";
201
202 // static
203 DownloadFeedbackFactory* DownloadFeedback::factory_ = nullptr;
204--- chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc.orig
205+++ chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc
206@@ -279,7 +279,7 @@ GURL SpellcheckHunspellDictionary::GetDi
207 DCHECK(!bdict_file.empty());
208
209 static const char kDownloadServerUrl[] =
210- "https://redirector.gvt1.com/edgedl/chrome/dict/";
211+ "trk:173:https://redirector.gvt1.com/edgedl/chrome/dict/";
212
213 return GURL(std::string(kDownloadServerUrl) +
214 base::ToLowerASCII(bdict_file));
215--- chrome/browser/supervised_user/supervised_user_service.cc.orig
216+++ chrome/browser/supervised_user/supervised_user_service.cc
217@@ -87,7 +87,7 @@ namespace {
218
219 // The URL from which to download a host denylist if no local one exists yet.
220 const char kDenylistURL[] =
221- "https://www.gstatic.com/chrome/supervised_user/denylist-20141001-1k.bin";
222+ "trk:272:https://www.gstatic.com/chrome/supervised_user/denylist-20141001-1k.bin";
223 // The filename under which we'll store the denylist (in the user data dir). The
224 // old file will be used as a backup in case the new file has not been loaded
225 // yet.
226--- chrome/browser/ui/views/outdated_upgrade_bubble_view.cc.orig
227+++ chrome/browser/ui/views/outdated_upgrade_bubble_view.cc
228@@ -54,7 +54,7 @@ const char* kUpdateBrowserRedirectUrl =
229 #else
230 // The URL to be used to re-install Chrome when auto-update failed for
231 // too long.
232- "https://www.google.com/chrome";
233+ "trk:242:https://www.google.com/chrome";
234 #endif
235
236 bool g_upgrade_bubble_is_showing = false;
237--- chrome/browser/ui/webui/ntp/ntp_resource_cache.cc.orig
238+++ chrome/browser/ui/webui/ntp/ntp_resource_cache.cc
239@@ -67,17 +67,17 @@ namespace {
240 // The URL for the the Learn More page shown on incognito new tab.
241 const char kLearnMoreIncognitoUrl[] =
242 #if BUILDFLAG(IS_CHROMEOS_ASH)
243- "https://support.google.com/chromebook/?p=incognito";
244+ "trk:246:https://support.google.com/chromebook/?p=incognito";
245 #else
246- "https://support.google.com/chrome/?p=incognito";
247+ "trk:247:https://support.google.com/chrome/?p=incognito";
248 #endif
249
250 // The URL for the Learn More page shown on guest session new tab.
251 const char kLearnMoreGuestSessionUrl[] =
252 #if BUILDFLAG(IS_CHROMEOS_ASH)
253- "https://support.google.com/chromebook/?p=chromebook_guest";
254+ "trk:248:https://support.google.com/chromebook/?p=chromebook_guest";
255 #else
256- "https://support.google.com/chrome/?p=ui_guest";
257+ "trk:261:https://support.google.com/chrome/?p=ui_guest";
258 #endif
259
260 std::string ReplaceTemplateExpressions(
261--- chrome/chrome_cleaner/components/recovery_component.cc.orig
262+++ chrome/chrome_cleaner/components/recovery_component.cc
263@@ -37,7 +37,7 @@ namespace chrome_cleaner {
264 namespace {
265
266 const char kComponentDownloadUrl[] =
267- "https://clients2.google.com/service/update2/crx?response=redirect&os=win"
268+ "trk:108:https://clients2.google.com/service/update2/crx?response=redirect&os=win"
269 "&installsource=swreporter&x=id%3Dnpdjjkjlcidkjlamlmmdelcjbcpdjocm"
270 "%26v%3D0.0.0.0%26uc&acceptformat=crx3";
271
272--- chrome/chrome_cleaner/crash/crashpad_crash_reporter.cc.orig
273+++ chrome/chrome_cleaner/crash/crashpad_crash_reporter.cc
274@@ -28,7 +28,7 @@
275 namespace {
276
277 // The URL where crash reports are uploaded.
278-const char kReportUploadURL[] = "https://clients2.google.com/cr/report";
279+const char kReportUploadURL[] = "trk:302:https://clients2.google.com/cr/report";
280
281 // Whether the current process is connected to a crash handler process.
282 bool g_is_connected_to_crash_handler = false;
283--- chrome/common/extensions/chrome_extensions_client.cc.orig
284+++ chrome/common/extensions/chrome_extensions_client.cc
285@@ -45,9 +45,9 @@ namespace {
286
287 // TODO(battre): Delete the HTTP URL once the blocklist is downloaded via HTTPS.
288 const char kExtensionBlocklistUrlPrefix[] =
289- "http://www.gstatic.com/chrome/extensions/blocklist";
290+ "trk:269:http://www.gstatic.com/chrome/extensions/blocklist";
291 const char kExtensionBlocklistHttpsUrlPrefix[] =
292- "https://www.gstatic.com/chrome/extensions/blocklist";
293+ "trk:270:https://www.gstatic.com/chrome/extensions/blocklist";
294
295 const char kThumbsWhiteListedExtension[] = "khopmbdjffemhegeeobelklnbglcdgfh";
296
297--- chrome/installer/setup/google_chrome_behaviors.cc.orig
298+++ chrome/installer/setup/google_chrome_behaviors.cc
299@@ -37,7 +37,7 @@ namespace installer {
300 namespace {
301
302 constexpr base::WStringPiece kUninstallSurveyUrl(
303- L"https://support.google.com/chrome?p=chrome_uninstall_survey");
304+ L"trk:253:https://support.google.com/chrome?p=chrome_uninstall_survey");
305
306 bool NavigateToUrlWithEdge(const std::wstring& url) {
307 std::wstring protocol_url = L"microsoft-edge:" + url;
308--- chromecast/browser/service/cast_service_simple.cc.orig
309+++ chromecast/browser/service/cast_service_simple.cc
310@@ -27,7 +27,7 @@ GURL GetStartupURL() {
311 const base::CommandLine::StringVector& args = command_line->GetArgs();
312
313 if (args.empty())
314- return GURL("http://www.google.com/");
315+ return GURL("trk:255:http://www.google.com/");
316
317 GURL url(args[0]);
318 if (url.is_valid() && url.has_scheme())
319--- chromecast/crash/linux/minidump_uploader.cc.orig
320+++ chromecast/crash/linux/minidump_uploader.cc
321@@ -41,7 +41,7 @@ namespace {
322
323 const char kProductName[] = "Eureka";
324
325-const char kCrashServerProduction[] = "https://clients2.google.com/cr/report";
326+const char kCrashServerProduction[] = "trk:305:https://clients2.google.com/cr/report";
327
328 const char kVirtualChannel[] = "virtual-channel";
329
330--- chromeos/geolocation/simple_geolocation_provider.cc.orig
331+++ chromeos/geolocation/simple_geolocation_provider.cc
332@@ -20,7 +20,7 @@ namespace chromeos {
333 namespace {
334
335 const char kDefaultGeolocationProviderUrl[] =
336- "https://www.googleapis.com/geolocation/v1/geolocate?";
337+ "trk:215:https://www.googleapis.com/geolocation/v1/geolocate?";
338
339 } // namespace
340
341--- components/cloud_devices/common/cloud_devices_urls.cc.orig
342+++ components/cloud_devices/common/cloud_devices_urls.cc
343@@ -13,14 +13,14 @@
344 namespace cloud_devices {
345
346 const char kCloudPrintAuthScope[] =
347- "https://www.googleapis.com/auth/cloudprint";
348+ "trk:197:https://www.googleapis.com/auth/cloudprint";
349
350 namespace {
351
352 // Url must not be matched by "urls" section of
353 // cloud_print_app/manifest.json. If it's matched, print driver dialog will
354 // open sign-in page in separate window.
355-const char kCloudPrintURL[] = "https://www.google.com/cloudprint";
356+const char kCloudPrintURL[] = "trk:201:https://www.google.com/cloudprint";
357
358 }
359
360--- components/drive/service/drive_api_service.cc.orig
361+++ components/drive/service/drive_api_service.cc
362@@ -75,9 +75,9 @@ namespace drive {
363 namespace {
364
365 // OAuth2 scopes for Drive API.
366-const char kDriveScope[] = "https://www.googleapis.com/auth/drive";
367+const char kDriveScope[] = "trk:217:https://www.googleapis.com/auth/drive";
368 const char kDriveAppsReadonlyScope[] =
369- "https://www.googleapis.com/auth/drive.apps.readonly";
370+ "trk:218:https://www.googleapis.com/auth/drive.apps.readonly";
371 const char kDriveAppsScope[] = "https://www.googleapis.com/auth/drive.apps";
372
373 // Mime type to create a directory.
374--- components/feedback/feedback_uploader.cc.orig
375+++ components/feedback/feedback_uploader.cc
376@@ -27,7 +27,7 @@ constexpr base::FilePath::CharType kFeed
377 FILE_PATH_LITERAL("Feedback Reports");
378
379 constexpr char kFeedbackPostUrl[] =
380- "https://www.google.com/tools/feedback/chrome/__submit";
381+ "trk:232:https://www.google.com/tools/feedback/chrome/__submit";
382
383 constexpr char kProtoBufMimeType[] = "application/x-protobuf";
384
385--- components/google/core/common/google_util.cc.orig
386+++ components/google/core/common/google_util.cc
387@@ -143,7 +143,7 @@ bool IsGoogleSearchSubdomainUrl(const GU
388
389 // Global functions -----------------------------------------------------------
390
391-const char kGoogleHomepageURL[] = "https://www.google.com/";
392+const char kGoogleHomepageURL[] = "trk:113:https://www.google.com/";
393
394 bool HasGoogleSearchQueryParam(base::StringPiece str) {
395 url::Component query(0, static_cast<int>(str.length())), key, value;
396--- components/history/core/browser/web_history_service.cc.orig
397+++ components/history/core/browser/web_history_service.cc
398@@ -42,13 +42,13 @@ namespace history {
399 namespace {
400
401 const char kHistoryOAuthScope[] =
402- "https://www.googleapis.com/auth/chromesync";
403+ "trk:138:https://www.googleapis.com/auth/chromesync";
404
405 const char kHistoryQueryHistoryUrl[] =
406- "https://history.google.com/history/api/lookup?client=chrome";
407+ "trk:139:https://history.google.com/history/api/lookup?client=chrome";
408
409 const char kHistoryDeleteHistoryUrl[] =
410- "https://history.google.com/history/api/delete?client=chrome";
411+ "trk:140:https://history.google.com/history/api/delete?client=chrome";
412
413 const char kHistoryAudioHistoryUrl[] =
414 "https://history.google.com/history/api/lookup?client=audio";
415--- components/metrics/url_constants.cc.orig
416+++ components/metrics/url_constants.cc
417@@ -7,7 +7,7 @@
418 namespace metrics {
419
420 const char kNewMetricsServerUrl[] =
421- "https://clientservices.googleapis.com/uma/v2";
422+ "trk:265:https://clientservices.googleapis.com/uma/v2";
423
424 const char kNewMetricsServerUrlInsecure[] =
425 "http://clientservices.googleapis.com/uma/v2";
426--- components/safe_browsing/content/browser/client_side_detection_service.cc.orig
427+++ components/safe_browsing/content/browser/client_side_detection_service.cc
428@@ -62,7 +62,7 @@ const int ClientSideDetectionService::kN
429 const int ClientSideDetectionService::kPositiveCacheIntervalMinutes = 30;
430
431 const char ClientSideDetectionService::kClientReportPhishingUrl[] =
432- "https://sb-ssl.google.com/safebrowsing/clientreport/phishing";
433+ "trk:148:https://sb-ssl.google.com/safebrowsing/clientreport/phishing";
434
435 struct ClientSideDetectionService::ClientPhishingReportInfo {
436 std::unique_ptr<network::SimpleURLLoader> loader;
437--- components/safe_search_api/safe_search/safe_search_url_checker_client.cc.orig
438+++ components/safe_search_api/safe_search/safe_search_url_checker_client.cc
439@@ -28,7 +28,7 @@ namespace safe_search_api {
440 namespace {
441
442 const char kSafeSearchApiUrl[] =
443- "https://safesearch.googleapis.com/v1:classify";
444+ "trk:238:https://safesearch.googleapis.com/v1:classify";
445 const char kDataContentType[] = "application/x-www-form-urlencoded";
446 const char kDataFormat[] = "key=%s&urls=%s";
447
448--- components/safe_search_api/stub_url_checker.cc.orig
449+++ components/safe_search_api/stub_url_checker.cc
450@@ -21,7 +21,7 @@ namespace safe_search_api {
451 namespace {
452
453 constexpr char kSafeSearchApiUrl[] =
454- "https://safesearch.googleapis.com/v1:classify";
455+ "trk:238:https://safesearch.googleapis.com/v1:classify";
456
457 std::string BuildResponse(bool is_porn) {
458 base::DictionaryValue dict;
459--- components/translate/core/browser/translate_url_fetcher.cc.orig
460+++ components/translate/core/browser/translate_url_fetcher.cc
461@@ -99,6 +99,7 @@ bool TranslateURLFetcher::Request(const
462 if (!extra_request_header_.empty())
463 resource_request->headers.AddHeaderFromString(extra_request_header_);
464
465+ fprintf(stderr, "translator: fetching something from %s\n", url_.spec().c_str());
466 simple_loader_ =
467 variations::CreateSimpleURLLoaderWithVariationsHeaderUnknownSignedIn(
468 std::move(resource_request),
469--- components/translate/core/common/translate_util.cc.orig
470+++ components/translate/core/common/translate_util.cc
471@@ -20,7 +20,7 @@ const char kDetectLanguageInSubFrames[]
472
473 } // namespace
474
475-const char kSecurityOrigin[] = "https://translate.googleapis.com/";
476+const char kSecurityOrigin[] = "trk:220:https://translate.googleapis.com/";
477
478 const base::Feature kTranslateSubFrames{"TranslateSubFrames",
479 base::FEATURE_DISABLED_BY_DEFAULT};
480--- components/variations/variations_url_constants.cc.orig
481+++ components/variations/variations_url_constants.cc
482@@ -8,7 +8,7 @@ namespace variations {
483
484 // Default server of Variations seed info.
485 const char kDefaultServerUrl[] =
486- "https://clientservices.googleapis.com/chrome-variations/seed";
487+ "trk:142:https://clientservices.googleapis.com/chrome-variations/seed";
488
489 const char kDefaultInsecureServerUrl[] =
490 "http://clientservices.googleapis.com/chrome-variations/seed";
491--- content/browser/speech/speech_recognition_engine.cc.orig
492+++ content/browser/speech/speech_recognition_engine.cc
493@@ -33,7 +33,7 @@ namespace content {
494 namespace {
495
496 const char kWebServiceBaseUrl[] =
497- "https://www.google.com/speech-api/full-duplex/v1";
498+ "trk:184:https://www.google.com/speech-api/full-duplex/v1";
499 const char kDownstreamUrl[] = "/down?";
500 const char kUpstreamUrl[] = "/up?";
501
502--- content/browser/webauth/authenticator_common.cc.orig
503+++ content/browser/webauth/authenticator_common.cc
504@@ -88,9 +88,9 @@ enum class RequestExtension {
505 namespace {
506
507 constexpr char kGstaticAppId[] =
508- "https://www.gstatic.com/securitykey/origins.json";
509+ "trk:276:https://www.gstatic.com/securitykey/origins.json";
510 constexpr char kGstaticCorpAppId[] =
511- "https://www.gstatic.com/securitykey/a/google.com/origins.json";
512+ "trk:277:https://www.gstatic.com/securitykey/a/google.com/origins.json";
513
514 WebAuthenticationDelegate* GetWebAuthenticationDelegate() {
515 return GetContentClient()->browser()->GetWebAuthenticationDelegate();
516--- content/shell/browser/shell_browser_main_parts.cc.orig
517+++ content/shell/browser/shell_browser_main_parts.cc
518@@ -96,7 +96,7 @@ GURL GetStartupURL() {
519 #else
520 const base::CommandLine::StringVector& args = command_line->GetArgs();
521 if (args.empty())
522- return GURL("https://www.google.com/");
523+ return GURL("trk:183:https://www.google.com/");
524
525 #if defined(OS_WIN)
526 GURL url(base::WideToUTF16(args[0]));
527--- extensions/common/extension_urls.cc.orig
528+++ extensions/common/extension_urls.cc
529@@ -26,9 +26,9 @@ bool IsSourceFromAnExtension(const std::
530
531 namespace extension_urls {
532
533-const char kChromeWebstoreBaseURL[] = "https://chrome.google.com/webstore";
534+const char kChromeWebstoreBaseURL[] = "trk:09:https://chrome.google.com/webstore";
535 const char kChromeWebstoreUpdateURL[] =
536- "https://clients2.google.com/service/update2/crx";
537+ "trk:05:https://clients2.google.com/service/update2/crx";
538
539 GURL GetWebstoreLaunchURL() {
540 extensions::ExtensionsClient* client = extensions::ExtensionsClient::Get();
541--- google_apis/gaia/gaia_constants.cc.orig
542+++ google_apis/gaia/gaia_constants.cc
543@@ -25,133 +25,133 @@ const char kSyncService[] = "chromiumsyn
544 const char kRemotingService[] = "chromoting";
545
546 // OAuth scopes.
547-const char kOAuth1LoginScope[] = "https://www.google.com/accounts/OAuthLogin";
548+const char kOAuth1LoginScope[] = "trk:069:https://www.google.com/accounts/OAuthLogin";
549
550 // Service/scope names for device management (cloud-based policy) server.
551 const char kDeviceManagementServiceOAuth[] =
552- "https://www.googleapis.com/auth/chromeosdevicemanagement";
553+ "trk:070:https://www.googleapis.com/auth/chromeosdevicemanagement";
554
555 // OAuth2 scope for access to all Google APIs.
556-const char kAnyApiOAuth2Scope[] = "https://www.googleapis.com/auth/any-api";
557+const char kAnyApiOAuth2Scope[] = "trk:071:https://www.googleapis.com/auth/any-api";
558
559 // OAuth2 scope for access to Chrome sync APIs
560 const char kChromeSyncOAuth2Scope[] =
561- "https://www.googleapis.com/auth/chromesync";
562+ "trk:072:https://www.googleapis.com/auth/chromesync";
563 // OAuth2 scope for access to the Chrome Sync APIs for managed profiles.
564 const char kChromeSyncSupervisedOAuth2Scope[] =
565- "https://www.googleapis.com/auth/chromesync_playpen";
566+ "trk:073:https://www.googleapis.com/auth/chromesync_playpen";
567
568 // OAuth2 scope for access to Kid Management API.
569 const char kKidManagementOAuth2Scope[] =
570- "https://www.googleapis.com/auth/kid.management";
571+ "trk:074:https://www.googleapis.com/auth/kid.management";
572
573 // OAuth2 scope for parental consent logging for secondary account addition.
574 const char kKidManagementPrivilegedOAuth2Scope[] =
575- "https://www.googleapis.com/auth/kid.management.privileged";
576+ "trk:075:https://www.googleapis.com/auth/kid.management.privileged";
577
578 // OAuth2 scope for access to Google Family Link Supervision Setup.
579 const char kKidsSupervisionSetupChildOAuth2Scope[] =
580- "https://www.googleapis.com/auth/kids.supervision.setup.child";
581+ "trk:076:https://www.googleapis.com/auth/kids.supervision.setup.child";
582
583 // OAuth2 scope for access to Google Talk APIs (XMPP).
584 const char kGoogleTalkOAuth2Scope[] =
585- "https://www.googleapis.com/auth/googletalk";
586+ "trk:077:https://www.googleapis.com/auth/googletalk";
587
588 // OAuth2 scope for access to Google account information.
589 const char kGoogleUserInfoEmail[] =
590- "https://www.googleapis.com/auth/userinfo.email";
591+ "trk:078:https://www.googleapis.com/auth/userinfo.email";
592 const char kGoogleUserInfoProfile[] =
593- "https://www.googleapis.com/auth/userinfo.profile";
594+ "trk:079:https://www.googleapis.com/auth/userinfo.profile";
595
596 // OAuth2 scope for access to the people API (read-only).
597 const char kPeopleApiReadOnlyOAuth2Scope[] =
598- "https://www.googleapis.com/auth/peopleapi.readonly";
599+ "trk:080:https://www.googleapis.com/auth/peopleapi.readonly";
600
601 // OAuth2 scope for access to the Reauth flow.
602 const char kAccountsReauthOAuth2Scope[] =
603- "https://www.googleapis.com/auth/accounts.reauth";
604+ "trk:081:https://www.googleapis.com/auth/accounts.reauth";
605
606 // OAuth2 scope for access to audit recording (ARI).
607 const char kAuditRecordingOAuth2Scope[] =
608- "https://www.googleapis.com/auth/auditrecording-pa";
609+ "trk:082:https://www.googleapis.com/auth/auditrecording-pa";
610
611 // OAuth2 scope for access to clear cut logs.
612-const char kClearCutOAuth2Scope[] = "https://www.googleapis.com/auth/cclog";
613+const char kClearCutOAuth2Scope[] = "trk:083:https://www.googleapis.com/auth/cclog";
614
615 // OAuth2 scope for FCM, the Firebase Cloud Messaging service.
616 const char kFCMOAuthScope[] =
617- "https://www.googleapis.com/auth/firebase.messaging";
618+ "trk:084:https://www.googleapis.com/auth/firebase.messaging";
619
620 // OAuth2 scope for access to Tachyon api.
621-const char kTachyonOAuthScope[] = "https://www.googleapis.com/auth/tachyon";
622+const char kTachyonOAuthScope[] = "trk:085:https://www.googleapis.com/auth/tachyon";
623
624 // OAuth2 scope for access to the Photos API.
625-const char kPhotosOAuth2Scope[] = "https://www.googleapis.com/auth/photos";
626+const char kPhotosOAuth2Scope[] = "trk:086:https://www.googleapis.com/auth/photos";
627
628 // OAuth2 scope for access to Cast backdrop API.
629 const char kCastBackdropOAuth2Scope[] =
630- "https://www.googleapis.com/auth/cast.backdrop";
631+ "trk:087:https://www.googleapis.com/auth/cast.backdrop";
632
633 // OAuth scope for access to Cloud Translation API.
634 const char kCloudTranslationOAuth2Scope[] =
635- "https://www.googleapis.com/auth/cloud-translation";
636+ "trk:088:https://www.googleapis.com/auth/cloud-translation";
637
638 // OAuth2 scope for access to passwords leak checking API.
639 const char kPasswordsLeakCheckOAuth2Scope[] =
640- "https://www.googleapis.com/auth/identity.passwords.leak.check";
641+ "trk:089:https://www.googleapis.com/auth/identity.passwords.leak.check";
642
643 // OAuth2 scope for access to Chrome safe browsing API.
644 const char kChromeSafeBrowsingOAuth2Scope[] =
645- "https://www.googleapis.com/auth/chrome-safe-browsing";
646+ "trk:090:https://www.googleapis.com/auth/chrome-safe-browsing";
647
648 // OAuth2 scope for access to kid permissions by URL.
649 const char kClassifyUrlKidPermissionOAuth2Scope[] =
650- "https://www.googleapis.com/auth/kid.permission";
651+ "trk:091:https://www.googleapis.com/auth/kid.permission";
652 const char kKidFamilyReadonlyOAuth2Scope[] =
653- "https://www.googleapis.com/auth/kid.family.readonly";
654+ "trk:092:https://www.googleapis.com/auth/kid.family.readonly";
655
656 // OAuth2 scope for access to payments.
657 const char kPaymentsOAuth2Scope[] =
658- "https://www.googleapis.com/auth/wallet.chrome";
659+ "trk:093:https://www.googleapis.com/auth/wallet.chrome";
660
661 const char kCryptAuthOAuth2Scope[] =
662- "https://www.googleapis.com/auth/cryptauth";
663+ "trk:094:https://www.googleapis.com/auth/cryptauth";
664
665 // OAuth2 scope for access to Drive.
666-const char kDriveOAuth2Scope[] = "https://www.googleapis.com/auth/drive";
667+const char kDriveOAuth2Scope[] = "trk:095:https://www.googleapis.com/auth/drive";
668
669 // The scope required for an access token in order to query ItemSuggest.
670 const char kDriveReadOnlyOAuth2Scope[] =
671- "https://www.googleapis.com/auth/drive.readonly";
672+ "trk:096:https://www.googleapis.com/auth/drive.readonly";
673
674 // OAuth2 scope for access to Assistant SDK.
675 const char kAssistantOAuth2Scope[] =
676- "https://www.googleapis.com/auth/assistant-sdk-prototype";
677+ "trk:097:https://www.googleapis.com/auth/assistant-sdk-prototype";
678
679 // OAuth2 scope for access to nearby devices (fast pair) APIs.
680 const char kCloudPlatformProjectsOAuth2Scope[] =
681- "https://www.googleapis.com/auth/cloudplatformprojects";
682+ "trk:098:https://www.googleapis.com/auth/cloudplatformprojects";
683
684 // OAuth2 scope for access to nearby sharing.
685 const char kNearbyShareOAuth2Scope[] =
686- "https://www.googleapis.com/auth/nearbysharing-pa";
687+ "trk:099:https://www.googleapis.com/auth/nearbysharing-pa";
688
689 // OAuth2 scopes for access to GCM account tracker.
690-const char kGCMGroupServerOAuth2Scope[] = "https://www.googleapis.com/auth/gcm";
691+const char kGCMGroupServerOAuth2Scope[] = "trk:100:https://www.googleapis.com/auth/gcm";
692 const char kGCMCheckinServerOAuth2Scope[] =
693- "https://www.googleapis.com/auth/android_checkin";
694+ "trk:101:https://www.googleapis.com/auth/android_checkin";
695
696 // OAuth2 scope for access to readonly Chrome web store.
697 const char kChromeWebstoreOAuth2Scope[] =
698- "https://www.googleapis.com/auth/chromewebstore.readonly";
699+ "trk:102:https://www.googleapis.com/auth/chromewebstore.readonly";
700
701 // OAuth2 scope for access to Account Capabilities API.
702 const char kAccountCapabilitiesOAuth2Scope[] =
703- "https://www.googleapis.com/auth/account.capabilities";
704+ "trk:103:https://www.googleapis.com/auth/account.capabilities";
705
706 // OAuth2 scope for support content API.
707 const char kSupportContentOAuth2Scope[] =
708- "https://www.googleapis.com/auth/supportcontent";
709+ "trk:104:https://www.googleapis.com/auth/supportcontent";
710
711 // OAuth 2 scope for NTP Photos module API.
712 const char kPhotosModuleOAuth2Scope[] =
713--- google_apis/gaia/gaia_urls.cc.orig
714+++ google_apis/gaia/gaia_urls.cc
715@@ -24,6 +24,7 @@
716 namespace {
717
718 // Gaia service constants
719+//adding trk: here currently crashes the program
720 const char kDefaultGoogleUrl[] = "http://google.com";
721 const char kDefaultGaiaUrl[] = "https://accounts.google.com";
722 const char kDefaultGoogleApisBaseUrl[] = "https://www.googleapis.com";
723--- google_apis/gcm/engine/gservices_settings.cc.orig
724+++ google_apis/gcm/engine/gservices_settings.cc
725@@ -30,18 +30,18 @@ const char kRegistrationURLKey[] = "gcm_
726
727 const int64_t kDefaultCheckinInterval = 2 * 24 * 60 * 60; // seconds = 2 days.
728 const int64_t kMinimumCheckinInterval = 12 * 60 * 60; // seconds = 12 hours.
729-const char kDefaultCheckinURL[] = "https://android.clients.google.com/checkin";
730+const char kDefaultCheckinURL[] = "trk:110:https://android.clients.google.com/checkin";
731 const char kDefaultMCSHostname[] = "mtalk.google.com";
732 const int kDefaultMCSMainSecurePort = 5228;
733 const int kDefaultMCSFallbackSecurePort = 443;
734 const char kDefaultRegistrationURL[] =
735- "https://android.clients.google.com/c2dm/register3";
736+ "trk:111:https://android.clients.google.com/c2dm/register3";
737 // Settings that are to be deleted are marked with this prefix in checkin
738 // response.
739 const char kDeleteSettingPrefix[] = "delete_";
740 // Settings digest starts with verison number followed by '-'.
741 const char kDigestVersionPrefix[] = "1-";
742-const char kMCSEnpointTemplate[] = "https://%s:%d";
743+const char kMCSEnpointTemplate[] = "trk:112:https://%s:%d";
744 const int kMaxSecurePort = 65535;
745
746 std::string MakeMCSEndpoint(const std::string& mcs_hostname, int port) {
747--- jingle/notifier/base/gaia_token_pre_xmpp_auth.cc.orig
748+++ jingle/notifier/base/gaia_token_pre_xmpp_auth.cc
749@@ -36,7 +36,7 @@ class GaiaCookieMechanism : public jingl
750 // These attributes are necessary for working with non-gmail gaia
751 // accounts.
752 const std::string NS_GOOGLE_AUTH_PROTOCOL(
753- "http://www.google.com/talk/protocol/auth");
754+ "trk:179:http://www.google.com/talk/protocol/auth");
755 const jingle_xmpp::QName QN_GOOGLE_ALLOW_GENERATED_JID_XMPP_LOGIN(
756 NS_GOOGLE_AUTH_PROTOCOL, "allow-generated-jid");
757 const jingle_xmpp::QName QN_GOOGLE_AUTH_CLIENT_USES_FULL_BIND_RESULT(
758--- remoting/base/breakpad_mac.mm.orig
759+++ remoting/base/breakpad_mac.mm
760@@ -50,7 +50,7 @@ void InitializeCrashReporting() {
761 breakpad_config[@BREAKPAD_REPORT_INTERVAL] = @"21600";
762 }
763 if (!breakpad_config[@BREAKPAD_URL]) {
764- breakpad_config[@BREAKPAD_URL] = @"https://clients2.google.com/cr/report";
765+ breakpad_config[@BREAKPAD_URL] = @"trk:310:https://clients2.google.com/cr/report";
766 }
767
768 if (!BreakpadCreate(breakpad_config)) {
769--- remoting/protocol/jingle_messages.cc.orig
770+++ remoting/protocol/jingle_messages.cc
771@@ -27,7 +27,7 @@ const char kJabberNamespace[] = "jabber:
772 const char kJingleNamespace[] = "urn:xmpp:jingle:1";
773
774 // Namespace for transport messages when using standard ICE.
775-const char kIceTransportNamespace[] = "google:remoting:ice";
776+const char kIceTransportNamespace[] = "trk:100:google:remoting:ice";
777
778 const char kWebrtcTransportNamespace[] = "google:remoting:webrtc";
779
780--- rlz/lib/lib_values.cc.orig
781+++ rlz/lib/lib_values.cc
782@@ -40,7 +40,7 @@ const char kSetDccResponseVariable[] = "
783 //
784
785 const char kFinancialPingPath[] = "/tools/pso/ping";
786-const char kFinancialServer[] = "clients1.google.com";
787+const char kFinancialServer[] = "trk:443:clients1.google.com"; /* not using URLRequest! catch with cache.ir */
788 const int kFinancialPort = 443;
789
790 // Ping times in 100-nanosecond intervals.
791--- third_party/libjingle_xmpp/xmpp/constants.cc.orig
792+++ third_party/libjingle_xmpp/xmpp/constants.cc
793@@ -194,7 +194,7 @@ const StaticQName QN_SASL_TEMPORARY_AUTH
794
795 // These are non-standard.
796 const char NS_GOOGLE_AUTH_PROTOCOL[] =
797- "http://www.google.com/talk/protocol/auth";
798+ "trk:236:http://www.google.com/talk/protocol/auth";
799 const StaticQName QN_GOOGLE_AUTH_CLIENT_USES_FULL_BIND_RESULT =
800 { NS_GOOGLE_AUTH_PROTOCOL, "client-uses-full-bind-result" };
801 const StaticQName QN_GOOGLE_ALLOW_NON_GOOGLE_ID_XMPP_LOGIN =
802@@ -338,7 +338,7 @@ const char STR_SHOW_DND[] = "dnd";
803 const char STR_SHOW_XA[] = "xa";
804 const char STR_SHOW_OFFLINE[] = "offline";
805
806-const char NS_GOOGLE_PSTN_CONFERENCE[] = "http://www.google.com/pstn-conference";
807+const char NS_GOOGLE_PSTN_CONFERENCE[] = "trk:237:http://www.google.com/pstn-conference";
808 const StaticQName QN_GOOGLE_PSTN_CONFERENCE_STATUS = { NS_GOOGLE_PSTN_CONFERENCE, "status" };
809 const StaticQName QN_ATTR_STATUS = { STR_EMPTY, "status" };
810
811@@ -433,7 +433,7 @@ const StaticQName QN_MUC_ROLE = { NS_MUC
812 const char STR_AFFILIATION_NONE[] = "none";
813 const char STR_ROLE_PARTICIPANT[] = "participant";
814
815-const char NS_GOOGLE_SESSION[] = "http://www.google.com/session";
816+const char NS_GOOGLE_SESSION[] = "trk:238:http://www.google.com/session";
817 const StaticQName QN_GOOGLE_CIRCLE_ID = { STR_EMPTY, "google-circle-id" };
818 const StaticQName QN_GOOGLE_USER_ID = { STR_EMPTY, "google-user-id" };
819 const StaticQName QN_GOOGLE_SESSION_BLOCKED = { NS_GOOGLE_SESSION, "blocked" };
820--- ui/accessibility/extensions/chromevoxclassic/chromevox/background/prefs.js.orig
821+++ ui/accessibility/extensions/chromevoxclassic/chromevox/background/prefs.js
822@@ -72,9 +72,9 @@ cvox.ChromeVoxPrefs.DEFAULT_PREFS = {
823 'outputContextFirst': false,
824 'position': '{}',
825 'siteSpecificScriptBase':
826- 'https://ssl.gstatic.com/accessibility/javascript/ext/',
827+ 'trk:242:https://ssl.gstatic.com/accessibility/javascript/ext/',
828 'siteSpecificScriptLoader':
829- 'https://ssl.gstatic.com/accessibility/javascript/ext/loader.js',
830+ 'trk:243:https://ssl.gstatic.com/accessibility/javascript/ext/loader.js',
831 'sticky': false,
832 'typingEcho': 0,
833 'useIBeamCursor': cvox.ChromeVox.isMac,
834--- ui/accessibility/extensions/chromevoxclassic/host/chrome/host.js.orig
835+++ ui/accessibility/extensions/chromevoxclassic/host/chrome/host.js
836@@ -96,9 +96,9 @@ cvox.ChromeHost.prototype.init = functio
837 (!cvox.ApiImplementation.siteSpecificScriptLoader ||
838 !cvox.ApiImplementation.siteSpecificScriptBase);
839 cvox.ApiImplementation.siteSpecificScriptLoader =
840- 'https://ssl.gstatic.com/accessibility/javascript/ext/loader.js';
841+ 'trk:244:https://ssl.gstatic.com/accessibility/javascript/ext/loader.js';
842 cvox.ApiImplementation.siteSpecificScriptBase =
843- 'https://ssl.gstatic.com/accessibility/javascript/ext/';
844+ 'trk:245:https://ssl.gstatic.com/accessibility/javascript/ext/';
845 if (apiPrefsChanged) {
846 var searchInit = prefs['siteSpecificEnhancements'] === 'true' ?
847 cvox.SearchLoader.init :
848--- ui/views/examples/webview_example.cc.orig
849+++ ui/views/examples/webview_example.cc
850@@ -29,7 +29,7 @@ void WebViewExample::CreateExampleView(V
851 webview_->GetWebContents()->SetDelegate(this);
852 container->SetLayoutManager(std::make_unique<FillLayout>());
853
854- webview_->LoadInitialURL(GURL("http://www.google.com/"));
855+ webview_->LoadInitialURL(GURL("trk:174:http://www.google.com/"));
856 webview_->GetWebContents()->Focus();
857 }
858