Home | History | Annotate | Download | only in ssl
      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