summaryrefslogtreecommitdiffstats
path: root/net/url_request/url_request.cc
diff options
context:
space:
mode:
authortommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-31 16:57:08 +0000
committertommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-31 16:57:08 +0000
commite600c8212f8922d77815316ff41fd8ce9d95bca7 (patch)
tree8cd918171785907306eefd67c5b80c3716da8343 /net/url_request/url_request.cc
parent9c1dab0943654879f843fc58337d0a936a215271 (diff)
downloadchromium_src-e600c8212f8922d77815316ff41fd8ce9d95bca7.zip
chromium_src-e600c8212f8922d77815316ff41fd8ce9d95bca7.tar.gz
chromium_src-e600c8212f8922d77815316ff41fd8ce9d95bca7.tar.bz2
Sanitizing the referrer header before starting the automation request.TEST=Run automation unit tests.BUG=none
Review URL: http://codereview.chromium.org/183004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24888 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/url_request/url_request.cc')
-rw-r--r--net/url_request/url_request.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
index 9f0f500..d94c8dc 100644
--- a/net/url_request/url_request.cc
+++ b/net/url_request/url_request.cc
@@ -240,6 +240,20 @@ void URLRequest::set_referrer(const std::string& referrer) {
referrer_ = referrer;
}
+GURL URLRequest::GetSanitizedReferrer() const {
+ GURL ret(referrer());
+
+ // Ensure that we do not send username and password fields in the referrer.
+ if (ret.has_username() || ret.has_password()) {
+ GURL::Replacements referrer_mods;
+ referrer_mods.ClearUsername();
+ referrer_mods.ClearPassword();
+ ret = ret.ReplaceComponents(referrer_mods);
+ }
+
+ return ret;
+}
+
void URLRequest::Start() {
StartJob(GetJobManager()->CreateJob(this));
}