Commit e8e59d4f authored by lgarron's avatar lgarron Committed by Commit bot

Switch SchemeIsSecure to SchemeIsCryptographic for referrer-related code.

BUG=362214

Review URL: https://codereview.chromium.org/1098983003

Cr-Commit-Position: refs/heads/master@{#327168}
parent ea35d94c
...@@ -108,7 +108,7 @@ static void AddNavigationFeatures( ...@@ -108,7 +108,7 @@ static void AddNavigationFeatures(
const std::vector<GURL>& redirect_chain, const std::vector<GURL>& redirect_chain,
ClientPhishingRequest* request) { ClientPhishingRequest* request) {
NavigationEntry* entry = controller.GetEntryAtIndex(index); NavigationEntry* entry = controller.GetEntryAtIndex(index);
bool is_secure_referrer = entry->GetReferrer().url.SchemeIsSecure(); bool is_secure_referrer = entry->GetReferrer().url.SchemeIsCryptographic();
if (!is_secure_referrer) { if (!is_secure_referrer) {
AddFeature(base::StringPrintf("%s%s=%s", AddFeature(base::StringPrintf("%s%s=%s",
feature_prefix.c_str(), feature_prefix.c_str(),
...@@ -150,7 +150,7 @@ static void AddNavigationFeatures( ...@@ -150,7 +150,7 @@ static void AddNavigationFeatures(
// We skip the last element since it should just be the current url. // We skip the last element since it should just be the current url.
for (size_t i = 0; i < redirect_chain.size() - 1; i++) { for (size_t i = 0; i < redirect_chain.size() - 1; i++) {
std::string printable_redirect = redirect_chain[i].spec(); std::string printable_redirect = redirect_chain[i].spec();
if (redirect_chain[i].SchemeIsSecure()) { if (redirect_chain[i].SchemeIsCryptographic()) {
printable_redirect = features::kSecureRedirectValue; printable_redirect = features::kSecureRedirectValue;
} }
AddFeature(base::StringPrintf("%s%s[%" PRIuS "]=%s", AddFeature(base::StringPrintf("%s%s[%" PRIuS "]=%s",
......
...@@ -98,8 +98,8 @@ void IOSSerializedNavigationDriver::Sanitize( ...@@ -98,8 +98,8 @@ void IOSSerializedNavigationDriver::Sanitize(
NOTREACHED(); NOTREACHED();
referrer.policy = web::ReferrerPolicyNever; referrer.policy = web::ReferrerPolicyNever;
} }
bool is_downgrade = referrer.url.SchemeIsSecure() && bool is_downgrade = referrer.url.SchemeIsCryptographic() &&
!navigation->virtual_url_.SchemeIsSecure(); !navigation->virtual_url_.SchemeIsCryptographic();
switch (referrer.policy) { switch (referrer.policy) {
case web::ReferrerPolicyDefault: case web::ReferrerPolicyDefault:
if (is_downgrade) if (is_downgrade)
......
...@@ -766,8 +766,8 @@ scoped_ptr<ResourceHostMsg_Request> ResourceDispatcher::CreateRequest( ...@@ -766,8 +766,8 @@ scoped_ptr<ResourceHostMsg_Request> ResourceDispatcher::CreateRequest(
if ((request_info.referrer.policy == blink::WebReferrerPolicyDefault || if ((request_info.referrer.policy == blink::WebReferrerPolicyDefault ||
request_info.referrer.policy == request_info.referrer.policy ==
blink::WebReferrerPolicyNoReferrerWhenDowngrade) && blink::WebReferrerPolicyNoReferrerWhenDowngrade) &&
request_info.referrer.url.SchemeIsSecure() && request_info.referrer.url.SchemeIsCryptographic() &&
!request_info.url.SchemeIsSecure()) { !request_info.url.SchemeIsCryptographic()) {
LOG(FATAL) << "Trying to send secure referrer for insecure request " LOG(FATAL) << "Trying to send secure referrer for insecure request "
<< "without an appropriate referrer policy.\n" << "without an appropriate referrer policy.\n"
<< "URL = " << request_info.url << "\n" << "URL = " << request_info.url << "\n"
......
...@@ -19,8 +19,8 @@ Referrer Referrer::SanitizeForRequest(const GURL& request, ...@@ -19,8 +19,8 @@ Referrer Referrer::SanitizeForRequest(const GURL& request,
return sanitized_referrer; return sanitized_referrer;
} }
bool is_downgrade = bool is_downgrade = sanitized_referrer.url.SchemeIsCryptographic() &&
sanitized_referrer.url.SchemeIsSecure() && !request.SchemeIsSecure(); !request.SchemeIsCryptographic();
if (sanitized_referrer.policy < 0 || if (sanitized_referrer.policy < 0 ||
sanitized_referrer.policy > blink::WebReferrerPolicyLast) { sanitized_referrer.policy > blink::WebReferrerPolicyLast) {
......
...@@ -23,8 +23,8 @@ std::string ReferrerHeaderValueForNavigation( ...@@ -23,8 +23,8 @@ std::string ReferrerHeaderValueForNavigation(
const GURL& destination, const GURL& destination,
const web::Referrer& referrer) { const web::Referrer& referrer) {
std::string referrer_value; std::string referrer_value;
bool leaving_secure_scheme = bool leaving_secure_scheme = referrer.url.SchemeIsCryptographic() &&
referrer.url.SchemeIsSecure() && !destination.SchemeIsSecure(); !destination.SchemeIsCryptographic();
if (referrer.policy == ReferrerPolicyAlways || if (referrer.policy == ReferrerPolicyAlways ||
(referrer.policy == ReferrerPolicyDefault && !leaving_secure_scheme)) { (referrer.policy == ReferrerPolicyDefault && !leaving_secure_scheme)) {
if (referrer.url.is_valid()) if (referrer.url.is_valid())
......
...@@ -249,7 +249,7 @@ SdchProblemCode SdchManager::CanFetchDictionary( ...@@ -249,7 +249,7 @@ SdchProblemCode SdchManager::CanFetchDictionary(
referring_url.scheme() != dictionary_url.scheme()) referring_url.scheme() != dictionary_url.scheme())
return SDCH_DICTIONARY_LOAD_ATTEMPT_FROM_DIFFERENT_HOST; return SDCH_DICTIONARY_LOAD_ATTEMPT_FROM_DIFFERENT_HOST;
if (!secure_scheme_supported() && referring_url.SchemeIsSecure()) if (!secure_scheme_supported() && referring_url.SchemeIsCryptographic())
return SDCH_DICTIONARY_SELECTED_FOR_SSL; return SDCH_DICTIONARY_SELECTED_FOR_SSL;
// TODO(jar): Remove this failsafe conservative hack which is more restrictive // TODO(jar): Remove this failsafe conservative hack which is more restrictive
...@@ -298,7 +298,8 @@ SdchManager::GetDictionarySetByHash( ...@@ -298,7 +298,8 @@ SdchManager::GetDictionarySetByHash(
if (it == dictionaries_.end()) if (it == dictionaries_.end())
return result.Pass(); return result.Pass();
if (!SdchManager::secure_scheme_supported() && target_url.SchemeIsSecure()) { if (!SdchManager::secure_scheme_supported() &&
target_url.SchemeIsSecure()) {
*problem_code = SDCH_DICTIONARY_FOUND_HAS_WRONG_SCHEME; *problem_code = SDCH_DICTIONARY_FOUND_HAS_WRONG_SCHEME;
return result.Pass(); return result.Pass();
} }
......
...@@ -280,8 +280,8 @@ GURL URLRequestJob::ComputeReferrerForRedirect( ...@@ -280,8 +280,8 @@ GURL URLRequestJob::ComputeReferrerForRedirect(
const GURL& redirect_destination) { const GURL& redirect_destination) {
GURL original_referrer(referrer); GURL original_referrer(referrer);
bool secure_referrer_but_insecure_destination = bool secure_referrer_but_insecure_destination =
original_referrer.SchemeIsSecure() && original_referrer.SchemeIsCryptographic() &&
!redirect_destination.SchemeIsSecure(); !redirect_destination.SchemeIsCryptographic();
bool same_origin = bool same_origin =
original_referrer.GetOrigin() == redirect_destination.GetOrigin(); original_referrer.GetOrigin() == redirect_destination.GetOrigin();
switch (policy) { switch (policy) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment