setTeeNodeInfos
设置全局节点信息,目前只支持两方0,1节点。
int setTeeNodeInfos (
DG_TeeCtx *dgTeeCtx,
struct TeeNodeInfos *teeNodeInfos
)
参数
参数名 |
描述 |
取值范围 |
输入/输出 |
|---|---|---|---|
dgTeeCtx |
MPC上下文信息 |
为DG_InitPsmOpts成功初始化的结果 |
输入 |
teeNodeInfos |
全局节点信息 |
不为NULL |
输入 |
名称 |
类型 |
说明 |
|---|---|---|
nodeId |
int |
计算方节点编号0,1 |
名称 |
类型 |
说明 |
|---|---|---|
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接口。
父主题: 隐私匹配PSM类算子调用