1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "chrome/browser/ssl/ssl_policy_backend.h" 6 7 #include "chrome/browser/profiles/profile.h" 8 #include "chrome/browser/ssl/ssl_host_state.h" 9 #include "content/browser/tab_contents/navigation_controller.h" 10 11 SSLPolicyBackend::SSLPolicyBackend(NavigationController* controller) 12 : ssl_host_state_(controller->profile()->GetSSLHostState()) { 13 DCHECK(controller); 14 } 15 16 void SSLPolicyBackend::HostRanInsecureContent(const std::string& host, int id) { 17 ssl_host_state_->HostRanInsecureContent(host, id); 18 SSLManager::NotifySSLInternalStateChanged(); 19 } 20 21 bool SSLPolicyBackend::DidHostRunInsecureContent(const std::string& host, 22 int pid) const { 23 return ssl_host_state_->DidHostRunInsecureContent(host, pid); 24 } 25 26 void SSLPolicyBackend::DenyCertForHost(net::X509Certificate* cert, 27 const std::string& host) { 28 ssl_host_state_->DenyCertForHost(cert, host); 29 } 30 31 void SSLPolicyBackend::AllowCertForHost(net::X509Certificate* cert, 32 const std::string& host) { 33 ssl_host_state_->AllowCertForHost(cert, host); 34 } 35 36 net::CertPolicy::Judgment SSLPolicyBackend::QueryPolicy( 37 net::X509Certificate* cert, const std::string& host) { 38 return ssl_host_state_->QueryPolicy(cert, host); 39 } 40