// Copyright (c) 2016 The Chromium Embedded Framework Authors. All rights // reserved. Use of this source code is governed by a BSD-style license that // can be found in the LICENSE file. #include "libcef/browser/ssl_status_impl.h" #include "libcef/browser/x509_certificate_impl.h" #include "net/ssl/ssl_connection_status_flags.h" CefSSLStatusImpl::CefSSLStatusImpl(const content::SSLStatus& value) { cert_status_ = static_cast(value.cert_status); content_status_ = static_cast(value.content_status); ssl_version_ = static_cast( net::SSLConnectionStatusToVersion(value.connection_status)); certificate_ = value.certificate; } bool CefSSLStatusImpl::IsSecureConnection() { return !!certificate_.get(); } cef_cert_status_t CefSSLStatusImpl::GetCertStatus() { return cert_status_; } cef_ssl_version_t CefSSLStatusImpl::GetSSLVersion() { return ssl_version_; } cef_ssl_content_status_t CefSSLStatusImpl::GetContentStatus() { return content_status_; } CefRefPtr CefSSLStatusImpl::GetX509Certificate() { if (certificate_ && !cef_certificate_) { cef_certificate_ = new CefX509CertificateImpl(certificate_); } return cef_certificate_; }