Home | History | Annotate | Download | only in test
      1 /*
      2  * Copyright (C) 2016 The Android Open Source Project
      3  *
      4  * Permission is hereby granted, free of charge, to any person
      5  * obtaining a copy of this software and associated documentation
      6  * files (the "Software"), to deal in the Software without
      7  * restriction, including without limitation the rights to use, copy,
      8  * modify, merge, publish, distribute, sublicense, and/or sell copies
      9  * of the Software, and to permit persons to whom the Software is
     10  * furnished to do so, subject to the following conditions:
     11  *
     12  * The above copyright notice and this permission notice shall be
     13  * included in all copies or substantial portions of the Software.
     14  *
     15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     16  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
     17  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
     18  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
     19  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
     20  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
     21  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     22  * SOFTWARE.
     23  */
     24 
     25 #include "fake_atap_ops.h"
     26 
     27 #include <memory>
     28 
     29 namespace atap {
     30 
     31 FakeAtapOps::FakeAtapOps() {}
     32 FakeAtapOps::~FakeAtapOps() {}
     33 
     34 AtapResult FakeAtapOps::read_product_id(
     35     uint8_t product_id[ATAP_PRODUCT_ID_LEN]) {
     36   memset(product_id, 0x00, ATAP_PRODUCT_ID_LEN);
     37   return ATAP_RESULT_OK;
     38 }
     39 
     40 AtapResult FakeAtapOps::get_auth_key_type(AtapKeyType* key_type) {
     41   *key_type = ATAP_KEY_TYPE_NONE;
     42   return ATAP_RESULT_OK;
     43 }
     44 
     45 AtapResult FakeAtapOps::read_auth_key_cert_chain(AtapCertChain* cert_chain) {
     46   return ATAP_RESULT_ERROR_UNSUPPORTED_OPERATION;
     47 }
     48 
     49 AtapResult FakeAtapOps::write_attestation_key(AtapKeyType key_type,
     50                                               const AtapBlob* key,
     51                                               const AtapCertChain* cert_chain) {
     52   return ATAP_RESULT_OK;
     53 }
     54 
     55 AtapResult FakeAtapOps::read_attestation_public_key(
     56 
     57     AtapKeyType key_type,
     58     uint8_t pubkey[ATAP_KEY_LEN_MAX],
     59     uint32_t* pubkey_len) {
     60   return ATAP_RESULT_ERROR_UNSUPPORTED_OPERATION;
     61 }
     62 
     63 AtapResult FakeAtapOps::read_soc_global_key(
     64     uint8_t global_key[ATAP_AES_128_KEY_LEN]) {
     65   return ATAP_RESULT_ERROR_UNSUPPORTED_OPERATION;
     66 }
     67 
     68 AtapResult FakeAtapOps::write_hex_uuid(const uint8_t uuid[ATAP_HEX_UUID_LEN]) {
     69   return ATAP_RESULT_OK;
     70 }
     71 
     72 AtapResult FakeAtapOps::auth_key_sign(const uint8_t* nonce,
     73                                       uint32_t nonce_len,
     74                                       uint8_t sig[ATAP_SIGNATURE_LEN_MAX],
     75                                       uint32_t* sig_len) {
     76   return ATAP_RESULT_ERROR_UNSUPPORTED_OPERATION;
     77 }
     78 
     79 }  // namespace atap
     80