// Copyright (c) 2012 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 "net/cert/x509_certificate_net_log_param.h" #include #include #include #include #include "base/values.h" #include "net/cert/x509_certificate.h" #include "net/log/net_log_capture_mode.h" namespace net { std::unique_ptr NetLogX509CertificateCallback( const X509Certificate* certificate, NetLogCaptureMode capture_mode) { std::unique_ptr dict(new base::DictionaryValue()); std::unique_ptr certs(new base::ListValue()); std::vector encoded_chain; certificate->GetPEMEncodedChain(&encoded_chain); for (size_t i = 0; i < encoded_chain.size(); ++i) certs->AppendString(encoded_chain[i]); dict->Set("certificates", std::move(certs)); return std::move(dict); } } // namespace net