mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
32 lines
985 B
C++
32 lines
985 B
C++
|
// 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 <memory>
|
||
|
#include <string>
|
||
|
#include <utility>
|
||
|
#include <vector>
|
||
|
|
||
|
#include "base/values.h"
|
||
|
#include "net/cert/x509_certificate.h"
|
||
|
#include "net/log/net_log_capture_mode.h"
|
||
|
|
||
|
namespace net {
|
||
|
|
||
|
std::unique_ptr<base::Value> NetLogX509CertificateCallback(
|
||
|
const X509Certificate* certificate,
|
||
|
NetLogCaptureMode capture_mode) {
|
||
|
std::unique_ptr<base::DictionaryValue> dict(new base::DictionaryValue());
|
||
|
std::unique_ptr<base::ListValue> certs(new base::ListValue());
|
||
|
std::vector<std::string> 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
|