setVoidValue
为配置信息设置void值,将TEE_NET_RES通过DG_Void赋值给config,然后注册到KCAL中。
int setVoidValue (
DG_Cfg config,
const char *key,
const DG_Void *value
)
参数
参数名 |
描述 |
取值范围 |
输入/输出 |
|---|---|---|---|
config |
初始化配置信息 |
输入为初始化成功的config |
输出 |
key |
value的唯一标识,设置通信接口 |
key值为DG_CON_MPC_TEE_VOID_NET_API |
输入 |
value |
设置的通信结构体 |
TEE_NET_RES结构体 |
输入 |
名称 |
类型 |
说明 |
|---|---|---|
data |
void * |
结构体指针 |
size |
long |
结构体内存长度 |
名称 |
类型 |
说明 |
|---|---|---|
funcSendData |
通信发送函数指针 |
int (*funcSendData)(struct TeeNodeInfo *nodeInfo, unsigned char *buf, u64 len); |
funcRecvData |
通信接收函数指针 |
int (*funcRecvData)(struct TeeNodeInfo *nodeInfo, unsigned char *buf, u64 *len); |
返回值
- 成功:返回0。
- 失败:返回错误码。
错误码
错误码 |
错误码值 |
描述 |
特殊说明 |
|---|---|---|---|
DG_ERR_CONFIG_PARAM |
62 |
参数校验失败 |
config为NULL或key为NULL或value为NULL |
依赖
#include "data_guard_config.h" :该接口声明所在的头文件。
示例
#include "data_guard_config.h"
#include "data_guard_mpc.h"
// Senddata和Recvdata为产品实现的通信发送和接收函数
TEE_NET_RES teeNet = {SendData, RecvData};
DG_Void netFunc;
netFunc.data = &teeNet;
netFunc.size = sizeof(TEE_NET_RES);
// 此opts为DG_InitConfigOpts的结果
int res = opts->setVoidValue(teeCfg, DG_CON_MPC_TEE_VOID_NET_API, &netFunc);
运行结果:res为0
使用DG_InitConfigOpts成功返回的opts来调用setVoidValue接口。
父主题: DataGuard操作集设置类接口