1*6777b538SAndroid Build Coastguard Worker // Copyright 2010 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker #include "net/http/url_security_manager.h" 6*6777b538SAndroid Build Coastguard Worker 7*6777b538SAndroid Build Coastguard Worker #include <utility> 8*6777b538SAndroid Build Coastguard Worker 9*6777b538SAndroid Build Coastguard Worker #include "net/http/http_auth_filter.h" 10*6777b538SAndroid Build Coastguard Worker 11*6777b538SAndroid Build Coastguard Worker namespace net { 12*6777b538SAndroid Build Coastguard Worker 13*6777b538SAndroid Build Coastguard Worker URLSecurityManagerAllowlist::URLSecurityManagerAllowlist() = default; 14*6777b538SAndroid Build Coastguard Worker 15*6777b538SAndroid Build Coastguard Worker URLSecurityManagerAllowlist::~URLSecurityManagerAllowlist() = default; 16*6777b538SAndroid Build Coastguard Worker CanUseDefaultCredentials(const url::SchemeHostPort & auth_scheme_host_port) const17*6777b538SAndroid Build Coastguard Workerbool URLSecurityManagerAllowlist::CanUseDefaultCredentials( 18*6777b538SAndroid Build Coastguard Worker const url::SchemeHostPort& auth_scheme_host_port) const { 19*6777b538SAndroid Build Coastguard Worker if (allowlist_default_.get()) 20*6777b538SAndroid Build Coastguard Worker return allowlist_default_->IsValid(auth_scheme_host_port, 21*6777b538SAndroid Build Coastguard Worker HttpAuth::AUTH_SERVER); 22*6777b538SAndroid Build Coastguard Worker return false; 23*6777b538SAndroid Build Coastguard Worker } 24*6777b538SAndroid Build Coastguard Worker CanDelegate(const url::SchemeHostPort & auth_scheme_host_port) const25*6777b538SAndroid Build Coastguard Workerbool URLSecurityManagerAllowlist::CanDelegate( 26*6777b538SAndroid Build Coastguard Worker const url::SchemeHostPort& auth_scheme_host_port) const { 27*6777b538SAndroid Build Coastguard Worker if (allowlist_delegate_.get()) 28*6777b538SAndroid Build Coastguard Worker return allowlist_delegate_->IsValid(auth_scheme_host_port, 29*6777b538SAndroid Build Coastguard Worker HttpAuth::AUTH_SERVER); 30*6777b538SAndroid Build Coastguard Worker return false; 31*6777b538SAndroid Build Coastguard Worker } 32*6777b538SAndroid Build Coastguard Worker SetDefaultAllowlist(std::unique_ptr<HttpAuthFilter> allowlist_default)33*6777b538SAndroid Build Coastguard Workervoid URLSecurityManagerAllowlist::SetDefaultAllowlist( 34*6777b538SAndroid Build Coastguard Worker std::unique_ptr<HttpAuthFilter> allowlist_default) { 35*6777b538SAndroid Build Coastguard Worker allowlist_default_ = std::move(allowlist_default); 36*6777b538SAndroid Build Coastguard Worker } 37*6777b538SAndroid Build Coastguard Worker SetDelegateAllowlist(std::unique_ptr<HttpAuthFilter> allowlist_delegate)38*6777b538SAndroid Build Coastguard Workervoid URLSecurityManagerAllowlist::SetDelegateAllowlist( 39*6777b538SAndroid Build Coastguard Worker std::unique_ptr<HttpAuthFilter> allowlist_delegate) { 40*6777b538SAndroid Build Coastguard Worker allowlist_delegate_ = std::move(allowlist_delegate); 41*6777b538SAndroid Build Coastguard Worker } 42*6777b538SAndroid Build Coastguard Worker HasDefaultAllowlist() const43*6777b538SAndroid Build Coastguard Workerbool URLSecurityManagerAllowlist::HasDefaultAllowlist() const { 44*6777b538SAndroid Build Coastguard Worker return allowlist_default_.get() != nullptr; 45*6777b538SAndroid Build Coastguard Worker } 46*6777b538SAndroid Build Coastguard Worker 47*6777b538SAndroid Build Coastguard Worker } // namespace net 48