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 12namespace net { 13 14bool 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 25void TestRootCerts::Clear() { 26 if (empty_) 27 return; 28 29 android::ClearTestRootCertificates(); 30 empty_ = true; 31} 32 33bool TestRootCerts::IsEmpty() const { 34 return empty_; 35} 36 37TestRootCerts::~TestRootCerts() {} 38 39void TestRootCerts::Init() { 40 empty_ = true; 41} 42 43} // namespace net 44