• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
SSLPolicyBackend(NavigationController * controller)11 SSLPolicyBackend::SSLPolicyBackend(NavigationController* controller)
12     : ssl_host_state_(controller->profile()->GetSSLHostState()) {
13   DCHECK(controller);
14 }
15 
HostRanInsecureContent(const std::string & host,int id)16 void SSLPolicyBackend::HostRanInsecureContent(const std::string& host, int id) {
17   ssl_host_state_->HostRanInsecureContent(host, id);
18   SSLManager::NotifySSLInternalStateChanged();
19 }
20 
DidHostRunInsecureContent(const std::string & host,int pid) const21 bool SSLPolicyBackend::DidHostRunInsecureContent(const std::string& host,
22                                                  int pid) const {
23   return ssl_host_state_->DidHostRunInsecureContent(host, pid);
24 }
25 
DenyCertForHost(net::X509Certificate * cert,const std::string & host)26 void SSLPolicyBackend::DenyCertForHost(net::X509Certificate* cert,
27                                        const std::string& host) {
28   ssl_host_state_->DenyCertForHost(cert, host);
29 }
30 
AllowCertForHost(net::X509Certificate * cert,const std::string & host)31 void SSLPolicyBackend::AllowCertForHost(net::X509Certificate* cert,
32                                         const std::string& host) {
33   ssl_host_state_->AllowCertForHost(cert, host);
34 }
35 
QueryPolicy(net::X509Certificate * cert,const std::string & host)36 net::CertPolicy::Judgment SSLPolicyBackend::QueryPolicy(
37     net::X509Certificate* cert, const std::string& host) {
38   return ssl_host_state_->QueryPolicy(cert, host);
39 }
40