blob: 7740146f3c0325831b5a652448cd62b6fa43b679 [file] [log] [blame]
// Copyright (c) 2011 The Chromium 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 "content/public/browser/ssl_status.h"
#include "net/cert/sct_status_flags.h"
#include "net/ssl/ssl_info.h"
namespace content {
SSLStatus::SSLStatus()
: initialized(false),
cert_status(0),
key_exchange_group(0),
peer_signature_algorithm(0),
connection_status(0),
content_status(NORMAL_CONTENT),
pkp_bypassed(false),
ct_policy_compliance(net::ct::CTPolicyCompliance::
CT_POLICY_COMPLIANCE_DETAILS_NOT_AVAILABLE) {}
SSLStatus::SSLStatus(const net::SSLInfo& ssl_info)
: initialized(true),
certificate(ssl_info.cert),
cert_status(ssl_info.cert_status),
public_key_hashes(ssl_info.public_key_hashes),
key_exchange_group(ssl_info.key_exchange_group),
peer_signature_algorithm(ssl_info.peer_signature_algorithm),
connection_status(ssl_info.connection_status),
content_status(NORMAL_CONTENT),
pkp_bypassed(ssl_info.pkp_bypassed),
ct_policy_compliance(ssl_info.ct_policy_compliance) {}
SSLStatus::SSLStatus(const SSLStatus& other)
: initialized(other.initialized),
certificate(other.certificate),
cert_status(other.cert_status),
public_key_hashes(other.public_key_hashes),
key_exchange_group(other.key_exchange_group),
peer_signature_algorithm(other.peer_signature_algorithm),
connection_status(other.connection_status),
content_status(other.content_status),
pkp_bypassed(other.pkp_bypassed),
ct_policy_compliance(other.ct_policy_compliance),
user_data(other.user_data ? other.user_data->Clone() : nullptr) {}
SSLStatus& SSLStatus::operator=(SSLStatus other) {
initialized = other.initialized;
certificate = other.certificate;
cert_status = other.cert_status;
public_key_hashes = other.public_key_hashes;
key_exchange_group = other.key_exchange_group;
peer_signature_algorithm = other.peer_signature_algorithm;
connection_status = other.connection_status;
content_status = other.content_status;
pkp_bypassed = other.pkp_bypassed;
ct_policy_compliance = other.ct_policy_compliance;
user_data = other.user_data ? other.user_data->Clone() : nullptr;
return *this;
}
SSLStatus::~SSLStatus() {}
} // namespace content