(g: Graph, node: Node, prf_keys: Node, status: IOStatus)
| 743 | } |
| 744 | |
| 745 | fn share_node(g: Graph, node: Node, prf_keys: Node, status: IOStatus) -> Result<Node> { |
| 746 | let mut outputs = vec![]; |
| 747 | let t = node.get_type()?; |
| 748 | let node_shares = get_node_shares(g.clone(), prf_keys, t, Some((node, status)))?; |
| 749 | // networking |
| 750 | for (i, node_share) in node_shares.iter().enumerate().take(PARTIES) { |
| 751 | let network_node = g.nop((*node_share).clone())?; |
| 752 | let im1 = ((i + PARTIES - 1) % PARTIES) as u64; |
| 753 | network_node.add_annotation(NodeAnnotation::Send(i as u64, im1))?; |
| 754 | outputs.push(network_node); |
| 755 | } |
| 756 | g.create_tuple(outputs) |
| 757 | } |
| 758 | |
| 759 | fn share_input(g: Graph, node: Node, t: Type, prf_keys: Node, status: IOStatus) -> Result<Node> { |
| 760 | let plain_input = g.input(t)?; |
no test coverage detected