initTeeCtx
初始化dgTeeCtx。
int initTeeCtx (
DG_Cfg dgCfg,
DG_TeeCtx **dgTeeCtx
)
参数
参数名 |
描述 |
取值范围 |
输入/输出 |
|---|---|---|---|
dgCfg |
KCAL的配置信息类型为void* |
不为空,已初始化过 |
输入 |
dgTeeCtx |
KCAL的上下文信息为DG_TeeCtx ** |
一级指针为空,二级指针不为空 |
输出 |
返回值
- 成功:返回0。
- 失败:返回错误码。
错误码
错误码 |
错误码值 |
描述 |
特殊说明 |
|---|---|---|---|
DG_SUCCESS |
0 |
成功 |
- |
DG_ERR_MPC_TEE_INVALID_PARAM |
4501 |
参数校验失败 |
DgCfg为NULL或dgTeeCtx二级指针为空 |
DG_ERR_MPC_TEE_NODEID_NOT_SET |
4506 |
nodeId未设置 |
需要各个节点设置自己的节点信息 |
DG_ERR_MPC_TEE_NET_API_CALLBACK_NOT_SET |
4507 |
网络发送或接收函数未注册 |
通信提供回调由产品注册 |
DG_ERR_MPC_TEE_FXP_BITS_NOT_SET DG_ERR_MPC_TEE_INVALID_ENVIRONMENT |
4509 4511 |
小数精度位数未设置 无效的cpuId或CVM环境 |
- 只能在CPUID为920和920新型号的鲲鹏服务器上运行密态计算功能 |
依赖
依赖的头文件为 #include "data_guard_mpc.h"。
示例
#include "data_guard_mpc.h"
// 假设 teeCfg 已初始化好
DG_Arithmetic_Opts aritOpts = DG_InitArithmeticOpts();
struct DG_TeeCtx *dgTee = nullptr;
int rv = aritOpts.initTeeCtx(teeCfg, &dgTee);
if (rv != 0) {
printf("tee init error.-%d\n", rv);
return rv;
}
运行结果:rv为0
此函数为创建dgTeeCtx结构体,通过调用DG_InitArithmeticOpts成功后的aritOpts来调用initTeeCtx接口。
父主题: 算术类算子