• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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/cert/test_root_certs.h"
6 
7 #include "base/location.h"
8 #include "base/logging.h"
9 #include "net/android/network_library.h"
10 #include "net/cert/x509_certificate.h"
11 
12 namespace net {
13 
Add(X509Certificate * certificate)14 bool TestRootCerts::Add(X509Certificate* certificate) {
15   std::string cert_bytes;
16   if (!X509Certificate::GetDEREncoded(certificate->os_cert_handle(),
17                                       &cert_bytes))
18       return false;
19   android::AddTestRootCertificate(
20       reinterpret_cast<const uint8*>(cert_bytes.data()), cert_bytes.size());
21   empty_ = false;
22   return true;
23 }
24 
Clear()25 void TestRootCerts::Clear() {
26   if (empty_)
27     return;
28 
29   android::ClearTestRootCertificates();
30   empty_ = true;
31 }
32 
IsEmpty() const33 bool TestRootCerts::IsEmpty() const {
34   return empty_;
35 }
36 
~TestRootCerts()37 TestRootCerts::~TestRootCerts() {}
38 
Init()39 void TestRootCerts::Init() {
40   empty_ = true;
41 }
42 
43 }  // namespace net
44