summaryrefslogtreecommitdiffstats
path: root/net/url_request/url_request.cc
diff options
context:
space:
mode:
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));
}