1b887bd8fSJens Wiklander /* 2b887bd8fSJens Wiklander * Copyright (c) 2017, Linaro Limited 3b887bd8fSJens Wiklander * All rights reserved. 4b887bd8fSJens Wiklander * 5b887bd8fSJens Wiklander * SPDX-License-Identifier: BSD-2-Clause 6b887bd8fSJens Wiklander */ 7b887bd8fSJens Wiklander 8b887bd8fSJens Wiklander #include <compiler.h> 9b887bd8fSJens Wiklander #include <tee/tee_cryp_provider.h> 10b887bd8fSJens Wiklander 11b887bd8fSJens Wiklander #if !defined(_CFG_CRYPTO_WITH_HASH) 12b887bd8fSJens Wiklander TEE_Result crypto_hash_get_ctx_size(uint32_t algo __unused, 13b887bd8fSJens Wiklander size_t *size __unused) 14b887bd8fSJens Wiklander { 15b887bd8fSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 16b887bd8fSJens Wiklander } 17b887bd8fSJens Wiklander 18b887bd8fSJens Wiklander TEE_Result crypto_hash_init(void *ctx __unused, uint32_t algo __unused) 19b887bd8fSJens Wiklander { 20b887bd8fSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 21b887bd8fSJens Wiklander } 22b887bd8fSJens Wiklander TEE_Result crypto_hash_update(void *ctx __unused, uint32_t algo __unused, 23b887bd8fSJens Wiklander const uint8_t *data __unused, size_t len __unused) 24b887bd8fSJens Wiklander { 25b887bd8fSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 26b887bd8fSJens Wiklander } 27b887bd8fSJens Wiklander TEE_Result crypto_hash_final(void *ctx __unused, uint32_t algo __unused, 28b887bd8fSJens Wiklander uint8_t *digest __unused, size_t len __unused) 29b887bd8fSJens Wiklander { 30b887bd8fSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 31b887bd8fSJens Wiklander } 32b887bd8fSJens Wiklander #endif /*_CFG_CRYPTO_WITH_HASH*/ 3382d91db1SJens Wiklander 3482d91db1SJens Wiklander #if !defined(_CFG_CRYPTO_WITH_CIPHER) 3582d91db1SJens Wiklander TEE_Result crypto_cipher_get_ctx_size(uint32_t algo, size_t *size) 3682d91db1SJens Wiklander { 3782d91db1SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED 3882d91db1SJens Wiklander } 3982d91db1SJens Wiklander 4082d91db1SJens Wiklander TEE_Result crypto_cipher_init(void *ctx __unused, uint32_t algo __unused, 4182d91db1SJens Wiklander TEE_OperationMode mode __unused, 4282d91db1SJens Wiklander const uint8_t *key1 __unused, 4382d91db1SJens Wiklander size_t key1_len __unused, 4482d91db1SJens Wiklander const uint8_t *key2 __unused, 4582d91db1SJens Wiklander size_t key2_len __unused, 4682d91db1SJens Wiklander const uint8_t *iv __unused, 4782d91db1SJens Wiklander size_t iv_len __unused) 4882d91db1SJens Wiklander { 4982d91db1SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED 5082d91db1SJens Wiklander } 5182d91db1SJens Wiklander 5282d91db1SJens Wiklander TEE_Result crypto_cipher_update(void *ctx __unused, uint32_t algo __unused, 5382d91db1SJens Wiklander TEE_OperationMode mode __unused, 5482d91db1SJens Wiklander bool last_block __unused, 5582d91db1SJens Wiklander const uint8_t *data __unused, 5682d91db1SJens Wiklander size_t len __unused, uint8_t *dst __unused) 5782d91db1SJens Wiklander { 5882d91db1SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED 5982d91db1SJens Wiklander } 6082d91db1SJens Wiklander 6182d91db1SJens Wiklander void crypto_cipher_final(void *ctx __unused, uint32_t algo __unused) 6282d91db1SJens Wiklander { 6382d91db1SJens Wiklander } 6482d91db1SJens Wiklander 6582d91db1SJens Wiklander TEE_Result crypto_cipher_get_block_size(uint32_t algo __unused, 6682d91db1SJens Wiklander size_t *size __unused) 6782d91db1SJens Wiklander { 6882d91db1SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED 6982d91db1SJens Wiklander } 7082d91db1SJens Wiklander #endif /*_CFG_CRYPTO_WITH_CIPHER*/ 71e9eaba5cSJens Wiklander 72e9eaba5cSJens Wiklander #if !defined(_CFG_CRYPTO_WITH_MAC) 73e9eaba5cSJens Wiklander TEE_Result crypto_mac_get_ctx_size(uint32_t algo __unused, 74e9eaba5cSJens Wiklander size_t *size __unused) 75e9eaba5cSJens Wiklander { 76e9eaba5cSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 77e9eaba5cSJens Wiklander } 78e9eaba5cSJens Wiklander 79e9eaba5cSJens Wiklander TEE_Result crypto_mac_init(void *ctx __unused, uint32_t algo __unused, 80e9eaba5cSJens Wiklander const uint8_t *key __unused, size_t len __unused) 81e9eaba5cSJens Wiklander { 82e9eaba5cSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 83e9eaba5cSJens Wiklander } 84e9eaba5cSJens Wiklander 85e9eaba5cSJens Wiklander TEE_Result crypto_mac_update(void *ctx __unused, uint32_t algo __unused, 86e9eaba5cSJens Wiklander const uint8_t *data __unused, size_t len __unused) 87e9eaba5cSJens Wiklander { 88e9eaba5cSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 89e9eaba5cSJens Wiklander } 90e9eaba5cSJens Wiklander 91e9eaba5cSJens Wiklander TEE_Result crypto_mac_final(void *ctx __unused, uint32_t algo __unused, 92e9eaba5cSJens Wiklander uint8_t *digest __unused, 93e9eaba5cSJens Wiklander size_t digest_len __unused) 94e9eaba5cSJens Wiklander { 95e9eaba5cSJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 96e9eaba5cSJens Wiklander } 97e9eaba5cSJens Wiklander #endif /*_CFG_CRYPTO_WITH_MAC*/ 98e9eaba5cSJens Wiklander 99*8875ce46SJens Wiklander #if !defined(_CFG_CRYPTO_WITH_AUTHENC) 100*8875ce46SJens Wiklander TEE_Result crypto_authenc_get_ctx_size(uint32_t algo __unused, 101*8875ce46SJens Wiklander size_t *size __unused) 102*8875ce46SJens Wiklander { 103*8875ce46SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 104*8875ce46SJens Wiklander } 105*8875ce46SJens Wiklander 106*8875ce46SJens Wiklander TEE_Result crypto_authenc_init(void *ctx __unused, uint32_t algo __unused, 107*8875ce46SJens Wiklander TEE_OperationMode mode __unused, 108*8875ce46SJens Wiklander const uint8_t *key __unused, 109*8875ce46SJens Wiklander size_t key_len __unused, 110*8875ce46SJens Wiklander const uint8_t *nonce __unused, 111*8875ce46SJens Wiklander size_t nonce_len __unused, 112*8875ce46SJens Wiklander size_t tag_len __unused, 113*8875ce46SJens Wiklander size_t aad_len __unused, 114*8875ce46SJens Wiklander size_t payload_len __unused) 115*8875ce46SJens Wiklander { 116*8875ce46SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 117*8875ce46SJens Wiklander } 118*8875ce46SJens Wiklander 119*8875ce46SJens Wiklander TEE_Result crypto_authenc_update_aad(void *ctx __unused, uint32_t algo __unused, 120*8875ce46SJens Wiklander TEE_OperationMode mode __unused, 121*8875ce46SJens Wiklander const uint8_t *data __unused, 122*8875ce46SJens Wiklander size_t len __unused) 123*8875ce46SJens Wiklander { 124*8875ce46SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 125*8875ce46SJens Wiklander } 126*8875ce46SJens Wiklander 127*8875ce46SJens Wiklander TEE_Result crypto_authenc_update_payload(void *ctx __unused, 128*8875ce46SJens Wiklander uint32_t algo __unused, 129*8875ce46SJens Wiklander TEE_OperationMode mode __unused, 130*8875ce46SJens Wiklander const uint8_t *src_data __unused, 131*8875ce46SJens Wiklander size_t src_len __unused, 132*8875ce46SJens Wiklander uint8_t *dst_data __unused, 133*8875ce46SJens Wiklander size_t *dst_len __unused) 134*8875ce46SJens Wiklander { 135*8875ce46SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 136*8875ce46SJens Wiklander } 137*8875ce46SJens Wiklander 138*8875ce46SJens Wiklander TEE_Result crypto_authenc_enc_final(void *ctx __unused, uint32_t algo __unused, 139*8875ce46SJens Wiklander const uint8_t *src_data __unused, 140*8875ce46SJens Wiklander size_t src_len __unused, 141*8875ce46SJens Wiklander uint8_t *dst_data __unused, 142*8875ce46SJens Wiklander size_t *dst_len __unused, 143*8875ce46SJens Wiklander uint8_t *dst_tag __unused, 144*8875ce46SJens Wiklander size_t *dst_tag_len __unused) 145*8875ce46SJens Wiklander { 146*8875ce46SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 147*8875ce46SJens Wiklander } 148*8875ce46SJens Wiklander 149*8875ce46SJens Wiklander TEE_Result crypto_authenc_dec_final(void *ctx __unused, uint32_t algo __unused, 150*8875ce46SJens Wiklander const uint8_t *src_data __unused, 151*8875ce46SJens Wiklander size_t src_len __unused, 152*8875ce46SJens Wiklander uint8_t *dst_data __unused, 153*8875ce46SJens Wiklander size_t *dst_len __unused, 154*8875ce46SJens Wiklander const uint8_t *tag __unused, 155*8875ce46SJens Wiklander size_t tag_len __unused) 156*8875ce46SJens Wiklander { 157*8875ce46SJens Wiklander return TEE_ERROR_NOT_IMPLEMENTED; 158*8875ce46SJens Wiklander } 159*8875ce46SJens Wiklander 160*8875ce46SJens Wiklander void crypto_authenc_final(void *ctx __unused, uint32_t algo __unused) 161*8875ce46SJens Wiklander { 162*8875ce46SJens Wiklander } 163*8875ce46SJens Wiklander #endif /*_CFG_CRYPTO_WITH_AUTHENC*/ 164