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 "chrome/browser/chromeos/settings/mock_owner_key_util.h" 6 7 #include "crypto/rsa_private_key.h" 8 9 namespace chromeos { 10 11 MockOwnerKeyUtil::MockOwnerKeyUtil() {} 12 13 MockOwnerKeyUtil::~MockOwnerKeyUtil() {} 14 15 bool MockOwnerKeyUtil::ImportPublicKey(std::vector<uint8>* output) { 16 *output = public_key_; 17 return !public_key_.empty(); 18 } 19 20 crypto::RSAPrivateKey* MockOwnerKeyUtil::FindPrivateKey( 21 const std::vector<uint8>& key) { 22 return private_key_.get() ? private_key_->Copy() : NULL; 23 } 24 25 bool MockOwnerKeyUtil::IsPublicKeyPresent() { 26 return !public_key_.empty(); 27 } 28 29 void MockOwnerKeyUtil::Clear() { 30 public_key_.clear(); 31 private_key_.reset(); 32 } 33 34 void MockOwnerKeyUtil::SetPublicKey(const std::vector<uint8>& key) { 35 public_key_ = key; 36 } 37 38 void MockOwnerKeyUtil::SetPublicKeyFromPrivateKey( 39 const crypto::RSAPrivateKey& key) { 40 key.ExportPublicKey(&public_key_); 41 } 42 43 void MockOwnerKeyUtil::SetPrivateKey(scoped_ptr<crypto::RSAPrivateKey> key) { 44 private_key_ = key.Pass(); 45 private_key_->ExportPublicKey(&public_key_); 46 } 47 48 } // namespace chromeos 49