1 // Copyright (c) 2012 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 "net/ssl/ssl_info.h" 6 7 #include "base/pickle.h" 8 #include "net/cert/cert_status_flags.h" 9 #include "net/cert/signed_certificate_timestamp.h" 10 #include "net/cert/x509_certificate.h" 11 12 namespace net { 13 14 SSLInfo::SSLInfo() { 15 Reset(); 16 } 17 18 SSLInfo::SSLInfo(const SSLInfo& info) { 19 *this = info; 20 } 21 22 SSLInfo::~SSLInfo() { 23 } 24 25 SSLInfo& SSLInfo::operator=(const SSLInfo& info) { 26 cert = info.cert; 27 cert_status = info.cert_status; 28 security_bits = info.security_bits; 29 connection_status = info.connection_status; 30 is_issued_by_known_root = info.is_issued_by_known_root; 31 client_cert_sent = info.client_cert_sent; 32 channel_id_sent = info.channel_id_sent; 33 handshake_type = info.handshake_type; 34 public_key_hashes = info.public_key_hashes; 35 signed_certificate_timestamps = info.signed_certificate_timestamps; 36 37 return *this; 38 } 39 40 void SSLInfo::Reset() { 41 cert = NULL; 42 cert_status = 0; 43 security_bits = -1; 44 connection_status = 0; 45 is_issued_by_known_root = false; 46 client_cert_sent = false; 47 channel_id_sent = false; 48 handshake_type = HANDSHAKE_UNKNOWN; 49 public_key_hashes.clear(); 50 signed_certificate_timestamps.clear(); 51 } 52 53 void SSLInfo::SetCertError(int error) { 54 cert_status |= MapNetErrorToCertStatus(error); 55 } 56 57 } // namespace net 58