Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (c) 2014, STMicroelectronics International N.V. |
| 3 | * |
| 4 | * This program is free software; you can redistribute it and/or modify |
| 5 | * it under the terms of the GNU General Public License Version 2 as |
| 6 | * published by the Free Software Foundation. |
| 7 | * |
| 8 | * This program is distributed in the hope that it will be useful, |
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 11 | * GNU General Public License for more details. |
| 12 | */ |
| 13 | |
| 14 | #include "xtest_test.h" |
Etienne Carriere | 726d8bc | 2017-03-21 15:45:59 +0100 | [diff] [blame^] | 15 | #include <pta_invoke_tests.h> |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 16 | #include <tee_client_api.h> |
| 17 | #include <ta_create_fail_test.h> |
| 18 | #include <ta_crypt.h> |
| 19 | #include <ta_os_test.h> |
| 20 | #include <ta_rpc_test.h> |
| 21 | #include <ta_sims_test.h> |
| 22 | #include <ta_storage.h> |
Jens Wiklander | ac27ec1 | 2015-07-15 15:23:14 +0200 | [diff] [blame] | 23 | #include <ta_concurrent.h> |
Jens Wiklander | 7067297 | 2016-04-06 00:01:45 +0200 | [diff] [blame] | 24 | #include <ta_concurrent_large.h> |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 25 | #include <enc_fs_key_manager_test.h> |
James Kung | df1e6cf | 2015-09-14 22:42:24 +0800 | [diff] [blame] | 26 | #include <ta_storage_benchmark.h> |
Jens Wiklander | 02389a9 | 2016-12-16 11:13:38 +0100 | [diff] [blame] | 27 | #include <ta_socket.h> |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 28 | #include <tee_api_defines.h> |
Jens Wiklander | 02389a9 | 2016-12-16 11:13:38 +0100 | [diff] [blame] | 29 | #include <__tee_isocket_defines.h> |
| 30 | #include <__tee_tcpsocket_defines.h> |
| 31 | #include <__tee_udpsocket_defines.h> |
Jerome Forissier | e368834 | 2015-09-24 10:45:17 -0700 | [diff] [blame] | 32 | #ifdef WITH_GP_TESTS |
Pascal Brand | 8a74e36 | 2015-09-10 12:41:52 +0200 | [diff] [blame] | 33 | #include <tee_api_types.h> |
| 34 | #include <TTA_DS_protocol.h> |
| 35 | #endif |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 36 | |
| 37 | ADBG_ENUM_TABLE_DEFINE_BEGIN(TEEC_Result) |
| 38 | ADBG_ENUM_TABLE_ENTRY(TEEC_SUCCESS), |
| 39 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_CORRUPT_OBJECT), |
| 40 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_CORRUPT_OBJECT_2), |
| 41 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_STORAGE_NOT_AVAILABLE), |
| 42 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_STORAGE_NOT_AVAILABLE_2), |
| 43 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_GENERIC), |
| 44 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_ACCESS_DENIED), |
| 45 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_CANCEL), |
| 46 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_ACCESS_CONFLICT), |
| 47 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_EXCESS_DATA), |
| 48 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_BAD_FORMAT), |
| 49 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_BAD_PARAMETERS), |
| 50 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_BAD_STATE), |
| 51 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_ITEM_NOT_FOUND), |
| 52 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_NOT_IMPLEMENTED), |
| 53 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_NOT_SUPPORTED), |
| 54 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_NO_DATA), |
| 55 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_OUT_OF_MEMORY), |
| 56 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_BUSY), |
| 57 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_COMMUNICATION), |
| 58 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_SECURITY), |
| 59 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_SHORT_BUFFER), |
| 60 | ADBG_ENUM_TABLE_ENTRY(TEEC_ERROR_EXTERNAL_CANCEL), |
| 61 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_OVERFLOW), |
| 62 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_TARGET_DEAD), |
| 63 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_STORAGE_NO_SPACE), |
| 64 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_MAC_INVALID), |
| 65 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_SIGNATURE_INVALID), |
| 66 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_TIME_NOT_SET), |
Jens Wiklander | 02389a9 | 2016-12-16 11:13:38 +0100 | [diff] [blame] | 67 | ADBG_ENUM_TABLE_ENTRY(TEE_ERROR_TIME_NEEDS_RESET), |
| 68 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_ERROR_PROTOCOL), |
| 69 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_ERROR_REMOTE_CLOSED), |
| 70 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_ERROR_TIMEOUT), |
| 71 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_ERROR_OUT_OF_RESOURCES), |
| 72 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_ERROR_LARGE_BUFFER), |
| 73 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_WARNING_PROTOCOL), |
| 74 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_ERROR_HOSTNAME), |
| 75 | ADBG_ENUM_TABLE_ENTRY(TEE_ISOCKET_UDP_WARNING_UNKNOWN_OUT_OF_BAND) |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 76 | ADBG_ENUM_TABLE_DEFINE_END(TEEC_Result); |
| 77 | |
| 78 | ADBG_ENUM_TABLE_DEFINE_BEGIN(TEEC_ErrorOrigin) |
| 79 | ADBG_ENUM_TABLE_ENTRY(TEEC_ORIGIN_API), |
| 80 | ADBG_ENUM_TABLE_ENTRY(TEEC_ORIGIN_COMMS), |
| 81 | ADBG_ENUM_TABLE_ENTRY(TEEC_ORIGIN_TEE), |
| 82 | ADBG_ENUM_TABLE_ENTRY(TEEC_ORIGIN_TRUSTED_APP) |
| 83 | ADBG_ENUM_TABLE_DEFINE_END(TEEC_ErrorOrigin); |
| 84 | |
| 85 | #define ECC_SELF_TEST_UUID \ |
| 86 | { 0xf34f4f3c, 0xab30, 0x4573, \ |
| 87 | { 0x91, 0xBF, 0x3C, 0x57, 0x02, 0x4D, 0x51, 0x99 } } |
| 88 | |
| 89 | const TEEC_UUID crypt_user_ta_uuid = TA_CRYPT_UUID; |
| 90 | const TEEC_UUID os_test_ta_uuid = TA_OS_TEST_UUID; |
| 91 | const TEEC_UUID create_fail_test_ta_uuid = TA_CREATE_FAIL_TEST_UUID; |
| 92 | const TEEC_UUID ecc_test_ta_uuid = ECC_SELF_TEST_UUID; |
Etienne Carriere | 726d8bc | 2017-03-21 15:45:59 +0100 | [diff] [blame^] | 93 | const TEEC_UUID pta_invoke_tests_ta_uuid = PTA_INVOKE_TESTS_UUID; |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 94 | const TEEC_UUID rpc_test_ta_uuid = TA_RPC_TEST_UUID; |
| 95 | const TEEC_UUID sims_test_ta_uuid = TA_SIMS_TEST_UUID; |
| 96 | const TEEC_UUID storage_ta_uuid = TA_STORAGE_UUID; |
Jerome Forissier | e385416 | 2016-08-12 12:40:12 +0200 | [diff] [blame] | 97 | const TEEC_UUID storage2_ta_uuid = TA_STORAGE2_UUID; |
Pascal Brand | c639ac8 | 2015-07-02 08:53:34 +0200 | [diff] [blame] | 98 | const TEEC_UUID enc_fs_key_manager_test_ta_uuid = ENC_FS_KEY_MANAGER_TEST_UUID; |
Jens Wiklander | ac27ec1 | 2015-07-15 15:23:14 +0200 | [diff] [blame] | 99 | const TEEC_UUID concurrent_ta_uuid = TA_CONCURRENT_UUID; |
Jens Wiklander | 7067297 | 2016-04-06 00:01:45 +0200 | [diff] [blame] | 100 | const TEEC_UUID concurrent_large_ta_uuid = TA_CONCURRENT_LARGE_UUID; |
James Kung | df1e6cf | 2015-09-14 22:42:24 +0800 | [diff] [blame] | 101 | const TEEC_UUID storage_benchmark_ta_uuid = TA_STORAGE_BENCHMARK_UUID; |
Jens Wiklander | 02389a9 | 2016-12-16 11:13:38 +0100 | [diff] [blame] | 102 | const TEEC_UUID socket_ta_uuid = TA_SOCKET_UUID; |
Jerome Forissier | e368834 | 2015-09-24 10:45:17 -0700 | [diff] [blame] | 103 | #ifdef WITH_GP_TESTS |
Pascal Brand | 8a74e36 | 2015-09-10 12:41:52 +0200 | [diff] [blame] | 104 | const TEEC_UUID gp_tta_ds_uuid = TA_TTA_DS_UUID; |
| 105 | #endif |