鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

setTeeNodeInfos

设置全局节点信息,目前只支持两方0,1节点。

int setTeeNodeInfos ( 
    DG_TeeCtx *dgTeeCtx, 
    struct TeeNodeInfos *teeNodeInfos
)

参数

参数名

描述

取值范围

输入/输出

dgTeeCtx

MPC上下文信息

DG_InitPsmOpts成功初始化的结果

输入

teeNodeInfos

全局节点信息

不为NULL

输入

表1 TeeNodeInfo结构体

名称

类型

说明

nodeId

int

计算方节点编号0,1

表2 TeeNodeInfos结构体

名称

类型

说明

nodeInfo

TeeNodeInfo *

多个节点信息

size

unsigned long

节点个数,目前只支持两个节点

返回值

  • 成功:返回0。
  • 失败:返回错误码。

错误码

错误码

错误码值

描述

特殊说明

DG_ERR_MPC_TEE_INVALID_PARAM

4501

参数校验失败

dgTeeCtx为NULL或teeNodeInfos为NULL

DG_ERR_MPC_TEE_INVALID_NODE_INFO

4503

无效的节点信息

网络参数设置不正确或根据size个数会校验nodeId信息或IP不正确

DG_ERR_MPC_TEE_NODE_NOT_SORT_AND_START_0

4505

nodeId未按照从0编号开始

nodeId规定从0开始依次递增

依赖

  • psmOpts依赖DG_InitPsmOpts的成功初始化PSM类函数组。
  • 依赖的头文件为 #include "data_guard_mpc.h"。

示例

#include  "data_guard_mpc.h" 
  
struct TeeNodeInfo teeNodes[2];
teeNodes[0].nodeId = 0;
teeNodes[1].nodeId = 1;
struct TeeNodeInfos allNodes;
allNodes.nodeInfo = teeNodes;
allNodes.size = 2;
rv = psmOpts.setTeeNodeInfos(dgTee, &allNodes);
if (rv != 0) {
    printf("tee set node info error.-%d\n", rv);
    return rv;
}

目前节点个数设置为2

运行结果: rv结果为0

调用DG_InitPsmOpts成功后的psmOpts来调用setTeeNodeInfos接口。