Implement Do Not Track

Bug #1178002 reported by Adnane Belmadiaf
68
This bug affects 13 people
Affects Status Importance Assigned to Milestone
Oxide
Fix Released
Low
Alexandre Abreu
webbrowser-app (Ubuntu)
Confirmed
Wishlist
Unassigned

Bug Description

Add an option to send DNT HTTP header, something like this :
request.setRawHeader ("DNT", dnt ? "1" : "0");

Related branches

Revision history for this message
Olivier Tilloy (osomon) wrote :
description: updated
Changed in webbrowser-app:
status: New → Confirmed
Bill Filler (bfiller)
Changed in webbrowser-app (Ubuntu):
status: New → Confirmed
importance: Undecided → Wishlist
Changed in webbrowser-app:
importance: Undecided → Wishlist
Revision history for this message
Adnane Belmadiaf (daker) wrote :

Adding Oxide since this should be done using QML

Revision history for this message
Chris Coulson (chrisccoulson) wrote :

This will happen in Oxide when I add the WebSettings API

Changed in oxide:
assignee: nobody → Chris Coulson (chrisccoulson)
Changed in oxide:
status: New → Triaged
importance: Undecided → Low
Revision history for this message
Chris Coulson (chrisccoulson) wrote :

Sorry I've not had a chance to work on this yet.

There are 2 places we need to set DNT settings:

1) content::RendererPreferences::enable_do_not_track, which sets what navigator.doNotTrack returns.
2) Manually adding the DNT header to outgoing network requests in oxide::NetworkDelegate.

Because 2) happens on Chromium's IO thread, we can't have a per-WebView setting or a property in WebPreferences for this (as there's no safe way to map a render process ID and render view ID to a WebView on the IO thread, and WebView + everything it encapsulates in Chromium is not thread safe). This would need to be a new property on WebContext, which provides a mechanism to access various properties on the IO thread (via oxide::BrowserContextIOData).

This should be fairly simple to implement

Revision history for this message
Chris Coulson (chrisccoulson) wrote :

I'd happily mentor a new contributor to implement this...

Changed in oxide:
assignee: Chris Coulson (chrisccoulson) → nobody
Changed in oxide:
assignee: nobody → Alexandre Abreu (abreu-alexandre)
Changed in oxide:
milestone: none → branch-1.9
Olivier Tilloy (osomon)
no longer affects: webbrowser-app
Changed in oxide:
status: Triaged → In Progress
Changed in oxide:
status: In Progress → Fix Committed
Olivier Tilloy (osomon)
Changed in oxide:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.