29 #ifndef TEE_CLIENT_API_H 30 #define TEE_CLIENT_API_H 45 #define TEEC_CONFIG_PAYLOAD_REF_COUNT 4 53 #define TEEC_CONFIG_SHAREDMEM_MAX_SIZE ULONG_MAX 109 #define TEEC_NONE 0x00000000 110 #define TEEC_VALUE_INPUT 0x00000001 111 #define TEEC_VALUE_OUTPUT 0x00000002 112 #define TEEC_VALUE_INOUT 0x00000003 113 #define TEEC_MEMREF_TEMP_INPUT 0x00000005 114 #define TEEC_MEMREF_TEMP_OUTPUT 0x00000006 115 #define TEEC_MEMREF_TEMP_INOUT 0x00000007 116 #define TEEC_MEMREF_WHOLE 0x0000000C 117 #define TEEC_MEMREF_PARTIAL_INPUT 0x0000000D 118 #define TEEC_MEMREF_PARTIAL_OUTPUT 0x0000000E 119 #define TEEC_MEMREF_PARTIAL_INOUT 0x0000000F 132 #define TEEC_MEM_INPUT 0x00000001 133 #define TEEC_MEM_OUTPUT 0x00000002 167 #define TEEC_SUCCESS 0x00000000 168 #define TEEC_ERROR_GENERIC 0xFFFF0000 169 #define TEEC_ERROR_ACCESS_DENIED 0xFFFF0001 170 #define TEEC_ERROR_CANCEL 0xFFFF0002 171 #define TEEC_ERROR_ACCESS_CONFLICT 0xFFFF0003 172 #define TEEC_ERROR_EXCESS_DATA 0xFFFF0004 173 #define TEEC_ERROR_BAD_FORMAT 0xFFFF0005 174 #define TEEC_ERROR_BAD_PARAMETERS 0xFFFF0006 175 #define TEEC_ERROR_BAD_STATE 0xFFFF0007 176 #define TEEC_ERROR_ITEM_NOT_FOUND 0xFFFF0008 177 #define TEEC_ERROR_NOT_IMPLEMENTED 0xFFFF0009 178 #define TEEC_ERROR_NOT_SUPPORTED 0xFFFF000A 179 #define TEEC_ERROR_NO_DATA 0xFFFF000B 180 #define TEEC_ERROR_OUT_OF_MEMORY 0xFFFF000C 181 #define TEEC_ERROR_BUSY 0xFFFF000D 182 #define TEEC_ERROR_COMMUNICATION 0xFFFF000E 183 #define TEEC_ERROR_SECURITY 0xFFFF000F 184 #define TEEC_ERROR_SHORT_BUFFER 0xFFFF0010 185 #define TEEC_ERROR_EXTERNAL_CANCEL 0xFFFF0011 186 #define TEEC_ERROR_TARGET_DEAD 0xFFFF3024 201 #define TEEC_ORIGIN_API 0x00000001 202 #define TEEC_ORIGIN_COMMS 0x00000002 203 #define TEEC_ORIGIN_TEE 0x00000003 204 #define TEEC_ORIGIN_TRUSTED_APP 0x00000004 222 #define TEEC_LOGIN_PUBLIC 0x00000000 223 #define TEEC_LOGIN_USER 0x00000001 224 #define TEEC_LOGIN_GROUP 0x00000002 225 #define TEEC_LOGIN_APPLICATION 0x00000004 226 #define TEEC_LOGIN_USER_APPLICATION 0x00000005 227 #define TEEC_LOGIN_GROUP_APPLICATION 0x00000006 237 #define TEEC_PARAM_TYPES(p0, p1, p2, p3) \ 238 ((p0) | ((p1) << 4) | ((p2) << 8) | ((p3) << 12)) 246 #define TEEC_PARAM_TYPE_GET(p, i) (((p) >> (i * 4)) & 0xF) 248 typedef uint32_t TEEC_Result;
268 uint16_t timeHiAndVersion;
269 uint8_t clockSeqAndNode[8];
299 bool buffer_allocated;
421 TEEC_Result TEEC_InitializeContext(
const char *name,
TEEC_Context *context);
465 uint32_t connectionMethod,
466 const void *connectionData,
468 uint32_t *returnOrigin);
498 uint32_t *returnOrigin);
512 TEEC_Result TEEC_RegisterSharedMemory(
TEEC_Context *context,
526 TEEC_Result TEEC_AllocateSharedMemory(
TEEC_Context *context,
Definition: tee_client_api.h:334
Definition: tee_client_api.h:254
Definition: tee_client_api.h:379
Definition: tee_client_api.h:265
Definition: tee_client_api.h:288
Definition: tee_client_api.h:399
Definition: tee_client_api.h:314
Definition: tee_client_api.h:369
Definition: tee_client_api.h:350