New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 808948 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug
Proj-Servicification



Sign in to add a comment

Support DoNotTrack with the Network Service

Project Member Reported by blundell@chromium.org, Feb 5 2018

Issue description

From sdefresne@ and jam@ (I didn't do any of the thinking here, just capturing others' thoughts ;):


sdefresne@: "Regarding the DNT tests, it appears they fail because the header is added by ChromeNetworkDelegate which is not used when NetworkService is enabled."

jam@: "we'll have to change where that header is sent. strawman: for frame requests, chrome can do this in ChromeContentBrowserClient::NavigationRequestStarted. For subresources, in the renderer we can pass blink::WebURLRequest to ChromeContentRendererClient::WillSendRequest and it can add the header there. The renderer needs some way to know whether to add it or not, so we could send it that pref value or I'm not sure if it can see the request headers of the frame that's making a subresource request. if it can, then it can add the header if the frame had added it"

Adding this support is (naturally) necessary to get the DoNotTrackTest tests in browser_tests working with the Network Service enabled.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Feb 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/98d5ff0361fa8cc2e4fed37ed61e9193b5516dcb

commit 98d5ff0361fa8cc2e4fed37ed61e9193b5516dcb
Author: Colin Blundell <blundell@chromium.org>
Date: Mon Feb 05 09:49:47 2018

Network Service: Properly characterize DoNotTrack test failures

Thanks to sdefresne@, we have more insight into why these tests are
failing.

TBR=jam@chromium.org

Bug:  808948 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo
Change-Id: I937b4721a86efa3246364b95f082019a88894b40
Reviewed-on: https://chromium-review.googlesource.com/901282
Reviewed-by: Colin Blundell <blundell@chromium.org>
Commit-Queue: Colin Blundell <blundell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534355}
[modify] https://crrev.com/98d5ff0361fa8cc2e4fed37ed61e9193b5516dcb/testing/buildbot/filters/mojo.fyi.network_browser_tests.filter

Owner: jcivelli@chromium.org
Status: Started (was: Available)
Project Member

Comment 3 by bugdroid1@chromium.org, Mar 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7cf9f94ce0b49c22dfed90bc685514416c308e87

commit 7cf9f94ce0b49c22dfed90bc685514416c308e87
Author: Jay Civelli <jcivelli@google.com>
Date: Thu Mar 08 01:05:20 2018

Make DoNotTrack work with the network service

This CL moves the DoNotTrack header to be set in the NavigationRequest
for frame navigations, and in RenderFrameImpl for sub-resrouces load,
based on whether the containing frame has DNT set.

This is now all done in the content layer. So the browser tests were
also moved to content, leaving in Chrome 2 simple tests that validates
that the Chrome preference is set on the WebContents.

Bug:  808948 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo
Change-Id: Ifb57ab8bb9a2bd6231ec0cf93232306738b020dc
Reviewed-on: https://chromium-review.googlesource.com/953077
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Commit-Queue: Jay Civelli <jcivelli@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541665}
[add] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/chrome_do_not_track_browsertest.cc
[delete] https://crrev.com/6934a31e7f675e3bd97b1646cb48dc1ab454ad10/chrome/browser/do_not_track_browsertest.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/extensions/api/web_request/web_request_api_unittest.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/io_thread.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/net/chrome_network_delegate.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/net/chrome_network_delegate.h
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/net/chrome_network_delegate_unittest.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/profiles/profile_io_data.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/browser/profiles/profile_io_data.h
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/chrome/test/BUILD.gn
[add] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/content/browser/do_not_track_browsertest.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/content/browser/frame_host/navigation_request.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/content/common/content_constants_internal.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/content/common/content_constants_internal.h
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/content/test/BUILD.gn
[modify] https://crrev.com/7cf9f94ce0b49c22dfed90bc685514416c308e87/testing/buildbot/filters/mojo.fyi.network_browser_tests.filter

Status: Fixed (was: Started)

Sign in to add a comment