summaryrefslogtreecommitdiffstats
path: root/content/browser
diff options
context:
space:
mode:
authormef@chromium.org <mef@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-10 22:46:13 +0000
committermef@chromium.org <mef@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-10 22:46:13 +0000
commit99ecf6eef0b28879e5b9dba05da0c9d32691c0be (patch)
treec02057a76f13e77ca167f3f1db149d16f2760eb2 /content/browser
parent3b617e991afabdac1bf69908b853af8ca847a5e9 (diff)
downloadchromium_src-99ecf6eef0b28879e5b9dba05da0c9d32691c0be.zip
chromium_src-99ecf6eef0b28879e5b9dba05da0c9d32691c0be.tar.gz
chromium_src-99ecf6eef0b28879e5b9dba05da0c9d32691c0be.tar.bz2
Remove URL fragment from referrer HTTP header (to comply with rfc2616) when opening link using "Open Link in New Tab" option.
Change URLRequest::set_referrer to URLRequest::SetReferrer which sanitizes referrer by removing URL fragment, user name and password. Remove URLRequest::GetSanitizedReferrer as URLRequest::referrer is now sanitized during set. BUG=168213 TEST=net_unittests, browser_tests Review URL: https://chromiumcodereview.appspot.com/12569007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193482 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser')
-rw-r--r--content/browser/android/download_controller_android_impl.cc2
-rw-r--r--content/browser/download/download_manager_impl.cc2
-rw-r--r--content/browser/loader/resource_dispatcher_host_impl.cc6
-rw-r--r--content/browser/loader/resource_dispatcher_host_unittest.cc2
-rw-r--r--content/browser/loader/resource_loader.cc2
-rw-r--r--content/browser/renderer_host/render_message_filter.cc2
6 files changed, 8 insertions, 8 deletions
diff --git a/content/browser/android/download_controller_android_impl.cc b/content/browser/android/download_controller_android_impl.cc
index 159d733..bd71d04 100644
--- a/content/browser/android/download_controller_android_impl.cc
+++ b/content/browser/android/download_controller_android_impl.cc
@@ -325,7 +325,7 @@ DownloadControllerAndroidImpl::DownloadInfoAndroid::DownloadInfoAndroid(
request->extra_request_headers().GetHeader(
net::HttpRequestHeaders::kUserAgent, &user_agent);
- GURL referer_url(request->GetSanitizedReferrer());
+ GURL referer_url(request->referrer());
if (referer_url.is_valid())
referer = referer_url.spec();
if (!request->url_chain().empty()) {
diff --git a/content/browser/download/download_manager_impl.cc b/content/browser/download/download_manager_impl.cc
index 5fae57a..404e0e2 100644
--- a/content/browser/download/download_manager_impl.cc
+++ b/content/browser/download/download_manager_impl.cc
@@ -58,7 +58,7 @@ void BeginDownload(scoped_ptr<DownloadUrlParameters> params,
params->resource_context()->GetRequestContext()->CreateRequest(
params->url(), NULL));
if (params->referrer().url.is_valid())
- request->set_referrer(params->referrer().url.spec());
+ request->SetReferrer(params->referrer().url.spec());
webkit_glue::ConfigureURLRequestForReferrerPolicy(
request.get(), params->referrer().policy);
request->set_load_flags(request->load_flags() | params->load_flags());
diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc
index d69582e..8b655fc 100644
--- a/content/browser/loader/resource_dispatcher_host_impl.cc
+++ b/content/browser/loader/resource_dispatcher_host_impl.cc
@@ -465,7 +465,7 @@ net::Error ResourceDispatcherHostImpl::BeginDownload(
base::debug::Alias(url_buf);
CHECK(ContainsKey(active_resource_contexts_, context));
- request->set_referrer(MaybeStripReferrer(GURL(request->referrer())).spec());
+ request->SetReferrer(MaybeStripReferrer(GURL(request->referrer())).spec());
int extra_load_flags = net::LOAD_IS_DOWNLOAD;
if (prefer_cache) {
// If there is upload data attached, only retrieve from cache because there
@@ -953,7 +953,7 @@ void ResourceDispatcherHostImpl::BeginRequest(
request->set_method(request_data.method);
request->set_first_party_for_cookies(request_data.first_party_for_cookies);
- request->set_referrer(referrer.url.spec());
+ request->SetReferrer(referrer.url.spec());
webkit_glue::ConfigureURLRequestForReferrerPolicy(request,
referrer.policy);
net::HttpRequestHeaders headers;
@@ -1269,7 +1269,7 @@ void ResourceDispatcherHostImpl::BeginSaveFile(
scoped_ptr<net::URLRequest> request(
request_context->CreateRequest(url, NULL));
request->set_method("GET");
- request->set_referrer(MaybeStripReferrer(referrer.url).spec());
+ request->SetReferrer(MaybeStripReferrer(referrer.url).spec());
webkit_glue::ConfigureURLRequestForReferrerPolicy(request.get(),
referrer.policy);
// So far, for saving page, we need fetch content from cache, in the
diff --git a/content/browser/loader/resource_dispatcher_host_unittest.cc b/content/browser/loader/resource_dispatcher_host_unittest.cc
index 3a64c33..5c3faef 100644
--- a/content/browser/loader/resource_dispatcher_host_unittest.cc
+++ b/content/browser/loader/resource_dispatcher_host_unittest.cc
@@ -1288,7 +1288,7 @@ TEST_F(ResourceDispatcherHostTest, CalculateApproximateMemoryCost) {
ResourceDispatcherHostImpl::CalculateApproximateMemoryCost(&req));
// Add 9 bytes of referrer.
- req.set_referrer("123456789");
+ req.SetReferrer("123456789");
EXPECT_EQ(4436,
ResourceDispatcherHostImpl::CalculateApproximateMemoryCost(&req));
diff --git a/content/browser/loader/resource_loader.cc b/content/browser/loader/resource_loader.cc
index a88aa05..ad5dd53 100644
--- a/content/browser/loader/resource_loader.cc
+++ b/content/browser/loader/resource_loader.cc
@@ -529,7 +529,7 @@ void ResourceLoader::CompleteResponseStarted() {
response->head.mime_type == "text/html" &&
!request_->url().SchemeIs(chrome::kChromeUIScheme) &&
!SiteInstance::IsSameWebSite(NULL, request_->url(),
- request_->GetSanitizedReferrer())) {
+ GURL(request_->referrer()))) {
response->head.mime_type = "application/browser-plugin";
}
diff --git a/content/browser/renderer_host/render_message_filter.cc b/content/browser/renderer_host/render_message_filter.cc
index 0d4e075..74acbf1 100644
--- a/content/browser/renderer_host/render_message_filter.cc
+++ b/content/browser/renderer_host/render_message_filter.cc
@@ -815,7 +815,7 @@ void RenderMessageFilter::OnDownloadUrl(const IPC::Message& message,
save_info->suggested_name = suggested_name;
scoped_ptr<net::URLRequest> request(
resource_context_->GetRequestContext()->CreateRequest(url, NULL));
- request->set_referrer(referrer.url.spec());
+ request->SetReferrer(referrer.url.spec());
webkit_glue::ConfigureURLRequestForReferrerPolicy(
request.get(), referrer.policy);
RecordDownloadSource(INITIATED_BY_RENDERER);