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

Unified Diff: content/public/common/referrer.cc

Issue 2918313002: Implement new referrer policies (Closed)
Patch Set: update public/platform/OWNERS per presubmit Created 3 years, 6 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 | « content/child/web_url_loader_impl.cc ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/public/common/referrer.cc
diff --git a/content/public/common/referrer.cc b/content/public/common/referrer.cc
index dbb2ae290c70c260ebed2256804856a47220fcc6..3543e4334964d9b2fed70ece19c1c0ae88bc483f 100644
--- a/content/public/common/referrer.cc
+++ b/content/public/common/referrer.cc
@@ -61,6 +61,17 @@ Referrer Referrer::SanitizeForRequest(const GURL& request,
if (request.GetOrigin() != sanitized_referrer.url.GetOrigin())
sanitized_referrer.url = sanitized_referrer.url.GetOrigin();
break;
+ case blink::kWebReferrerPolicyStrictOrigin:
+ if (is_downgrade) {
+ sanitized_referrer.url = GURL();
+ } else {
+ sanitized_referrer.url = sanitized_referrer.url.GetOrigin();
+ }
+ break;
+ case blink::kWebReferrerPolicySameOrigin:
+ if (request.GetOrigin() != sanitized_referrer.url.GetOrigin())
+ sanitized_referrer.url = GURL();
+ break;
case blink::kWebReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin:
if (is_downgrade) {
sanitized_referrer.url = GURL();
@@ -101,6 +112,11 @@ net::URLRequest::ReferrerPolicy Referrer::ReferrerPolicyForUrlRequest(
CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE;
case blink::kWebReferrerPolicyOriginWhenCrossOrigin:
return net::URLRequest::ORIGIN_ONLY_ON_TRANSITION_CROSS_ORIGIN;
+ case blink::kWebReferrerPolicySameOrigin:
+ return net::URLRequest::CLEAR_REFERRER_ON_TRANSITION_CROSS_ORIGIN;
+ case blink::kWebReferrerPolicyStrictOrigin:
+ return net::URLRequest::
+ ORIGIN_CLEAR_ON_TRANSITION_FROM_SECURE_TO_INSECURE;
case blink::kWebReferrerPolicyDefault:
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kReducedReferrerGranularity)) {
« no previous file with comments | « content/child/web_url_loader_impl.cc ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698