1 /* 2 * Copyright (c) 2022, Arm Ltd. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <stdarg.h> 8 #include <stdbool.h> 9 #include <stdio.h> 10 11 #include <delegated_attestation.h> 12 #include <measured_boot.h> 13 #include <psa/error.h> 14 15 16 psa_status_t 17 tfm_measured_boot_extend_measurement(uint8_t index, 18 const uint8_t *signer_id, 19 size_t signer_id_size, 20 const uint8_t *version, 21 size_t version_size, 22 uint32_t measurement_algo, 23 const uint8_t *sw_type, 24 size_t sw_type_size, 25 const uint8_t *measurement_value, 26 size_t measurement_value_size, 27 bool lock_measurement) 28 { 29 return rse_measured_boot_extend_measurement(index, 30 signer_id, 31 signer_id_size, 32 version, 33 version_size, 34 measurement_algo, 35 sw_type, 36 sw_type_size, 37 measurement_value, 38 measurement_value_size, 39 lock_measurement); 40 } 41 42 psa_status_t 43 tfm_measured_boot_read_measurement(uint8_t index, 44 uint8_t *signer_id, 45 size_t signer_id_size, 46 size_t *signer_id_len, 47 uint8_t *version, 48 size_t version_size, 49 size_t *version_len, 50 uint32_t *measurement_algo, 51 uint8_t *sw_type, 52 size_t sw_type_size, 53 size_t *sw_type_len, 54 uint8_t *measurement_value, 55 size_t measurement_value_size, 56 size_t *measurement_value_len, 57 bool *is_locked) 58 { 59 return rse_measured_boot_read_measurement(index, 60 signer_id, 61 signer_id_size, 62 signer_id_len, 63 version, 64 version_size, 65 version_len, 66 measurement_algo, 67 sw_type, 68 sw_type_size, 69 sw_type_len, 70 measurement_value, 71 measurement_value_size, 72 measurement_value_len, 73 is_locked); 74 } 75 76 psa_status_t 77 tfm_delegated_attest_get_token(const uint8_t *dak_pub_hash, 78 size_t dak_pub_hash_size, 79 uint8_t *token_buf, 80 size_t token_buf_size, 81 size_t *token_size) 82 { 83 return rse_delegated_attest_get_token(dak_pub_hash, 84 dak_pub_hash_size, 85 token_buf, 86 token_buf_size, 87 token_size); 88 } 89 90 psa_status_t 91 tfm_delegated_attest_get_delegated_key(uint8_t ecc_curve, 92 uint32_t key_bits, 93 uint8_t *key_buf, 94 size_t key_buf_size, 95 size_t *key_size, 96 uint32_t hash_algo) 97 { 98 return rse_delegated_attest_get_delegated_key(ecc_curve, 99 key_bits, 100 key_buf, 101 key_buf_size, 102 key_size, 103 hash_algo); 104 } 105 106 int tfm_log_printf(const char *fmt, ...) 107 { 108 int count; 109 va_list ap; 110 111 va_start(ap, fmt); 112 count = vprintf(fmt, ap); 113 va_end(ap); 114 115 return count; 116 } 117 118 void printf_set_color(int color_id) 119 { 120 (void)color_id; 121 } 122