Skip to main content

Crate teec_api_types

Crate teec_api_types 

Source
Expand description

此模块定义了 GlobalPlatform TEE 客户端 API 规范的常量、类型和结构体。

Structs§

TEEC_Context
表示客户端应用与 TEE 之间的连接上下文
TEEC_Context__Imp
TEEC_Operation
保存用于 TEEC_InvokeCommand() 的信息和内存引用
TEEC_Operation__Imp
TEEC_RegisteredMemoryReference
使用预先注册或预分配的内存块在客户端应用和受信任代码之间传输数据
TEEC_Session
表示客户端应用与受信任应用之间的会话连接
TEEC_Session__Imp
TEEC_SharedMemory
在客户端应用和受信任代码之间传输数据的共享内存
TEEC_SharedMemory__Imp
TEEC_TempMemoryReference
临时内存引用,用于在客户端应用和受信任代码之间传输数据
TEEC_UUID
按照 RFC4122 定义的全局唯一资源标识符(UUID)
TEEC_Value
小型原始数据容器

Constants§

TEEC_CONFIG_PAYLOAD_REF_COUNT
定义在打开会话或调用命令的操作负载中可用的内存引用数量。
TEEC_CONFIG_SHAREDMEM_MAX_SIZE
定义单个数据内存块(包括 API 分配和 API 注册内存)的最大字节大小。 这里没有一个通用的合理值(限制取决于具体配置),因此在本实现中 不会强制任何限制。
TEEC_ERROR_ACCESS_CONFLICT
并发访问导致冲突
TEEC_ERROR_ACCESS_DENIED
访问权限不足
TEEC_ERROR_BAD_FORMAT
输入数据格式无效
TEEC_ERROR_BAD_PARAMETERS
输入参数无效
TEEC_ERROR_BAD_STATE
当前状态下不允许执行该操作
TEEC_ERROR_BUSY
系统正忙于处理其他任务
TEEC_ERROR_CANCEL
操作被取消
TEEC_ERROR_COMMUNICATION
与远端通信失败
TEEC_ERROR_EXCESS_DATA
传入的数据超过请求操作允许的大小
TEEC_ERROR_EXTERNAL_CANCEL
由 Trusted User Interface 规范定义:外部事件导致用户界面操作被中止
TEEC_ERROR_GENERIC
一般性错误,原因不明确
TEEC_ERROR_ITEM_NOT_FOUND
未找到请求的数据项
TEEC_ERROR_NOT_IMPLEMENTED
请求的操作应存在但尚未实现
TEEC_ERROR_NOT_SUPPORTED
请求的操作在本实现中不受支持
TEEC_ERROR_NO_DATA
缺少预期的数据
TEEC_ERROR_OUT_OF_MEMORY
系统资源耗尽
TEEC_ERROR_SECURITY
检测到安全错误
TEEC_ERROR_SHORT_BUFFER
提供的缓冲区太短,无法容纳输出
TEEC_ERROR_TARGET_DEAD
TA 已终止
TEEC_LOGIN_APPLICATION
提供关于运行的客户端应用自身的登录数据
TEEC_LOGIN_GROUP
提供关于运行客户端进程的组的登录数据
TEEC_LOGIN_GROUP_APPLICATION
提供关于组和运行的客户端应用自身的登录数据
TEEC_LOGIN_PUBLIC
不提供登录数据
TEEC_LOGIN_USER
提供关于运行客户端进程的用户的登录数据
TEEC_LOGIN_USER_APPLICATION
提供关于用户和运行的客户端应用自身的登录数据
TEEC_MEMREF_PARTIAL_INOUT
已注册内存引用,指向父内存块的部分区域,同时作为输入和输出
TEEC_MEMREF_PARTIAL_INPUT
已注册内存引用,指向父内存块的部分区域,且为输入
TEEC_MEMREF_PARTIAL_OUTPUT
已注册内存引用,指向父内存块的部分区域,且为输出
TEEC_MEMREF_TEMP_INOUT
临时内存引用,同时作为输入和输出
TEEC_MEMREF_TEMP_INPUT
参数为 TEEC_TempMemoryReference,描述一段在操作期间需要临时注册的内存区域,且为输入
TEEC_MEMREF_TEMP_OUTPUT
与 TEEC_MEMREF_TEMP_INPUT 类似,但内存引用为输出。实现可以在某些用例中更新 size 字段以反映所需的输出大小
TEEC_MEMREF_WHOLE
参数为已注册的内存引用,指向其父内存块的整个区域。该参数结构为 TEEC_RegisteredMemoryReference, 实现必须只读取 parent 字段,并且在操作完成后可选择更新 size 字段
TEEC_MEM_INPUT
内存可用于将数据从客户端应用传递给受信任应用(TA)
TEEC_MEM_OUTPUT
内存可用于将数据从受信任应用(TA)传回客户端应用
TEEC_NONE
未使用该参数
TEEC_ORIGIN_API
错误来源于 TEE 客户端 API 的实现
TEEC_ORIGIN_COMMS
错误来源于底层通信栈(负责连接 rich OS 与 TEE)
TEEC_ORIGIN_TEE
错误来源于通用的 TEE 代码
TEEC_ORIGIN_TRUSTED_APP
错误来源于受信任应用(TA)代码
TEEC_SUCCESS
操作成功
TEEC_VALUE_INOUT
参数为 TEEC_Value,既作为输入又作为输出,同时具备 TEEC_VALUE_INPUT 和 TEEC_VALUE_OUTPUT 的语义
TEEC_VALUE_INPUT
参数为 TEEC_Value,作为输入传递
TEEC_VALUE_OUTPUT
参数为 TEEC_Value,作为输出传递

Functions§

TEEC_PARAM_TYPES
根据提供的类型对 paramTypes 进行编码
TEEC_PARAM_TYPE_GET
paramType 中获取第 i 个参数的类型

Type Aliases§

TEEC_Result

Unions§

TEEC_Parameter
传递数据时使用的内存容器